var nice = new String("ASH");
nice; //String {0: "A", 1: "S", 2: "H", length: 3, [[PrimitiveValue]]: "ASH"}
var reverseNice = Array.prototype.reverse.call(nice);
reverseNice.toString(); // "ASH"
而我期望 reverseNice
是“HSA”。
最佳答案
不能改nice
,试试看;
nice[0] = 'f';
nice[0]; // "A"
如果您想使用Array 方法,请先将其转换为真正的Array
var reverseNice = Array.prototype.slice.call(nice).reverse(); // notice slice
reverseNice.join(''); // "HSA", notice `.join` not `.toString`
关于javascript - new String() 的行为不像对象那样的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29712635/