Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.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 - Fatal编程技术网

Javascript,获取数组中保存的字符串的长度

Javascript,获取数组中保存的字符串的长度,javascript,arrays,Javascript,Arrays,上面的代码片段返回1 如何获得字符串的长度,在这种情况下为3?对象不是预期的对象。考虑: k = [['a'], ['ab'], ['abc']]; alert(k[2].length); 在您的示例中,k不是包含字符串的普通数组。它包含子数组,其中包含字符串。您应该这样声明k: k = [['a'], ['ab'], ['abc']]; a = k[2] // -> ['abc'] a.length // -> 1 (length of array) b = k[2]

上面的代码片段返回1


如何获得字符串的长度,在这种情况下为3?

对象不是预期的对象。考虑:

k = [['a'], ['ab'], ['abc']];
alert(k[2].length);

在您的示例中,
k
不是包含字符串的普通数组。它包含子数组,其中包含字符串。您应该这样声明
k

k = [['a'], ['ab'], ['abc']];
a = k[2]    // -> ['abc']
a.length    // -> 1 (length of array)
b = k[2][0] // -> 'abc'
b.length    // -> 3 (length of string)
如果您确实希望使用自己的声明,可以执行以下操作:

k = ['a', 'ab', 'abc'];

你有一个数组。。。这真的是你想要的吗?为什么不直接做
console.log(k[2])
看看
k[2]
是什么?也许读一读a会有帮助。是的。你的阵型看起来有点不对劲,但如果你无法控制它,@pst的回答是正确的。或者,您可能希望先将其展平,以便代码正常工作。
alert(k[2][0].length);​