当我发现这个(v1.5 行 2295)时,我正在研究 jQuery 源代码:
namespace = new RegExp("(^|\\.)" +
jQuery.map( namespaces.slice(0).sort(), fcleanup ).join("\\.(?:.*\\.)?") + "(\\.|$)");
我的问题是,为什么要在这里使用 slice(0)
?
最佳答案
sort()
修改它所调用的数组 - 改变其他代码可能依赖的东西并不是很好。
slice()
总是返回一个新数组 - slice(0)
返回的数组与输入相同,这基本上意味着它是复制一个数组的廉价方法数组。
关于javascript - .slice(0) 这里有什么意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5024085/