作为数组的字符串
在ES5中,字符串的行为类似于只读的数组。1
2
3var s = test;
s.charAt(0); // => 't'
s[1] // => 'e'
但是针对字符串的typeof操作符仍然返回“string”,如果给Array.isArray()传递字符串,它将返回false.
可索引的字符串的最大好处就是简单,用方括号代替charAt()调用,这样更加简洁,可读并且可能更高效。
注意
字符串是不可变值,故当把它们作为数组看待时,它们是只读的。如push()、sort()、reverse()和splice()等数组方法会修改数组,它们在字符串上是无效的。不仅如此,使用数组方法来修改字符串会导致错误:出错的时候没有提示。