Javascript:数组中字符串的第一个字母未分配新值。

Javascript: first letter of a string in array does not assigned new value. Why?

本问题已经有最佳答案,请猛点这里访问。

在下面的代码中,index 0处数组中字符串的第一个字母不会被大写值替换,尽管您可以使用arr[0][0]访问第一个字母。为什么?

1
2
3
var arr = ["mangoes","orange","apple"];
arr[0][0] = arr[0][0].toUpperCase();
arr;

谢谢英国电信


字符串是不可变的,不能将值赋给arr[0][0],它是字符串中的指针。需要将字符串arr[0]替换为新值:

1
2
3
4
5
var arr = ["mangoes","orange","apple"];
for (var i = 0; i < arr.length; i++) {
    arr[i] = arr[i].charAt(0).toUpperCase()+arr[i].substring(1);
}
console.log(arr); // ["Mangoes","Orange","Apple"]


arr[0]=arr[0].charat(0).touppercase()+arr[0].切片(1);

从这里开始:如何在javascript中将字符串的第一个字母变为大写?