Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript二维字符串数组更新值_Javascript_Arrays_String_Immutability - Fatal编程技术网

Javascript二维字符串数组更新值

Javascript二维字符串数组更新值,javascript,arrays,string,immutability,Javascript,Arrays,String,Immutability,我有以下代码: var data = ["z wwwww ","www w ","w b w ww","w w p w","w w w","wwbwp w"," wy www"," wwwww "]; console.log(data[0][0]); // outputs "z" data[0][0]="x"; console.log(data[0][0]); // still output "z". Shouldn't it show "x"? 这里我遗漏了什么?二维数组是

我有以下代码:

var data = ["z wwwww ","www   w ","w b w ww","w w  p w","w    w w","wwbwp  w"," wy  www"," wwwww  "];
console.log(data[0][0]); // outputs "z"
data[0][0]="x";
console.log(data[0][0]); // still output "z". Shouldn't it show "x"?

这里我遗漏了什么?

二维数组是一个数组,它包含数组本身的元素。您提供的示例不是二维阵列

所讨论的元素实际上是一个
字符串

数据[0]
-提供数据数组中的第一个元素,即字符串。
数据[0][0]
-提供此字符串元素的第一个
字符

在JavaScript中,字符串是字符的集合,但它本身不是数组。它可以通过
string.split(“”)
转换为字符串


无论如何,它显示
z
而不是
x
的原因是字符串是不可变的。这意味着他们的价值观不能改变。相反,会创建新对象。

字符串是不可变的。您可以使用字符串将字符串转换为数组。拆分(“”)不,字符串不是数组。这是一根绳子。