简单 JavaScript 方法链接

Simple JavaScript Method Chaining

我正在尝试将 Array 对象的方法链接在一起,但它不允许。

var arr = [1,2,3];
arr.splice(-3, 1, 'foot').splice(arr.length,0, 'hand');
console.log(arr) // ['foot', 2, 3]

//trying to get ['foot', 2, 3, 'hand']

这行不通。我必须将第二个 splice 拆分成一个新语句。为什么这不起作用?我在 JavaScript 代码中看到过多次链接。

只是因为 Array.prototype.splice returns 一个包含已删除元素的数组,正如您可以在其 documentation page.

上找到的

所以基本上有些方法允许链接,有些则不允许。如果那是你第一次使用它们,你可以参考文档。

更准确地说,数组的大多数方法都会创建一个新数组(拼接除外),因此从技术上讲它不是链接,因为您不会在同一数组的同一实例上应用不同的方法。典型的克隆链接方法是 filtermapfind.