gpt4 book ai didi

javascript - _.chain() 中的方法参数

转载 作者:行者123 更新时间:2023-12-02 18:29:52 25 4
gpt4 key购买 nike

使用 uniq() 时在 underscore.js 中,我们可以选择函数式方法或面向对象方法。通常,uniq() 接受一个数组、一个 isSorted bool 值和一个迭代器函数。 bool 值用于指示数组是否已排序。您可以对数组进行排序,然后传入 true 以获得更好的性能(显然)。

它可能看起来像这样:

var data = [
{'make':'Porsche','model':'911'},
{'make':'Porsche','model':'986'},
{'make':'Porsche','model':'986'}
];

var results = _.uniq(data, true, function (obj) {return obj.model});

但是,要使链接版本正常工作,我必须执行以下操作:

var results = _.chain(data)
.uniq(function (obj) {return obj.model})
.value();

那么,在链式版本中,isSorted 参数去哪里了?

最佳答案

链接版本将应用相同的函数,仅由包装值补充,因此它采用相同的参数。相当于

_.uniq(data, true, function (obj) {return obj.model});

_(data).uniq(true, function (obj) {return obj.model});

并且您的调用没有 true (isSorted 参数是可选的,您也可以将 iterator 映射器作为第二个参数)将是相当于

_.uniq(data, function (obj) {return obj.model});

关于javascript - _.chain() 中的方法参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17910547/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com