例如,假设我有一个名为str. 我知道我可以使用str.substr,因为浏览器,在幕后,
- 转换
str成字符串包装对象,相当于使用new String(str) - 使用步骤 1 返回
substr的对象上的正确参数调用方法String String对象的处置- 从步骤 2 返回字符串(原始)。
(https://stackoverflow.com/a/9110389/1529630)
但是如果我想str.substr多次使用会发生什么?例如
var positions = [1, 5, 8, 9, 15, ...], //long array
substrings = new Array(positions.length);
for ( var i = positions.length - 1; i >= 0; --i ) {
substrings[i] = str.substr(positions[i], 2);
}
我是否应该str在该循环之前转换为对象以避免在每一步都创建和销毁对象?