为了账号安全,请及时绑定邮箱和手机立即绑定

str.replace()不改变原str,例二为何加了return 就改变了原str

str.replace()不改变原str,例二为何加了return 就改变了原str

RISEBY 2018-12-13 18:19:18
例一function titleCase(str) {    var newArr = str.toLowerCase().split(" ");    newArr = newArr.map(function(val) {        val.replace(val[0],val[0].toUpperCase());        return val;    });        return newArr.join(" ");}titleCase("I'm a little tea pot");  //i'm a little tea pot例二function titleCase(str) {    var newArr = str.toLowerCase().split(" ");    newArr = newArr.map(function(val) {               return val.replace(val[0],val[0].toUpperCase());;    });        return newArr.join(" ");}titleCase("I'm a little tea pot");  //I`m A Little Tea Pot
查看完整描述

1 回答

?
慕的地6264312

TA贡献1817条经验 获得超6个赞

return val.replace(val[0],val[0].toUpperCase());;

等于


var tmp = val.replace(val[0],val[0].toUpperCase());

return tmp;

并没有改变原来的str 只是将返回的字符串直接return了


查看完整回答
反对 回复 2019-01-10
  • 1 回答
  • 0 关注
  • 672 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信