如果
示例:
为什么使用
Array.prototype.filter
返回一个数组,为什么我不能立即在该返回值上调用push()
?示例:
var arr = ["a", "ab", "c", "ad"];
var arr2 = arr.filter(function(elmnt) { return elmnt.indexOf("a") > -1; });
// result: ["a", "ab", "ad"]
arr2.push("aaa");
// result: ["a", "ab", "ad", "aaa"]
目前为止还不错。
但是如何将 push()
调用链接到 filter()
调用?
var arr = ["a", "ab", "c", "ad"];
var arr2 = arr.filter(function(elmnt) { return elmnt.indexOf("a") > -1; }).push("aaa");
// result: 4
为什么使用
filter()
和push()
链式调用会得到预期的元素数量,而不是这些元素的数组?