关于修改字符串中的某一个字符
请问,为什么不能用以下两种方式修改某个字符
str[0] = str[0].toUppercase()
str.charAt(0) = str.charAt(0).toUpperCase()
是因为没有权限还是其他的??
29
收起
正在回答
2回答
你好,通俗的方法解释下:首先字符串和数组所占空间不同。字符串变量,就占一个空间,而数组所占空间个数取决与数组成员的个数。
所以所说的 var x='aaaaaaa'; ,x就占一个空间,要改变值,也是整个改变,不能单独为其中的一部分直接改变,如:
var x='aaaaaaa'; x=x[0].toUpperCase()); // 直接给x 重新赋值 console.log(x); // x的值就是A 了 x[0]=x[0].toUpperCase()); //不会改变字符串中的一部分。 console.log(x); / /所以 x 的值没变还是aaaaaaa // 如果想改变字符串中的一部分,改变完后,样从新给变量赋值。 x= x.substring(0,1).toUpperCase()+x.substring(1); console.log(x); // 结果 Aaaaaaa
希望对你有帮助,祝学习愉快,欢迎采纳。
HTML5与CSS3实现动态网页 2018
- 参与学习 1887 人
- 提交作业 4643 份
- 解答问题 5760 个
有HTML和CSS基础,却不知道如何进阶?本路径带你通过系统学习,完成从“会做网页”到“做出好的动态网页”的蜕变,迈出成为前端工程师的第一步。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星