下划线忽略可选参数

时间:2015-09-25 15:41:53

标签: javascript underscore.js

我完全混淆了为什么以下下划线功能无法正常工作。

var testArray = [1, 2, 3, 4];
var resultingArray = _.first(testArray, 2);
console.log(resultingArray);

我不断将1记录到控制台。我已尝试使用_.initial进行类似的练习,并且似乎忽略了可选的n参数。任何人都知道可能会发生什么?

1 个答案:

答案 0 :(得分:1)

您确定自己使用的是underscore.js而不是lodash吗?

lodash以您描述的方式行事,其_.first() method不会采用除阵列本身以外的任何参数。它专门选择第一个元素:

  _.first(array)      

获取数组的第一个元素。

要使用lodash执行此操作,请改为使用its _.take() method

  _.take(array, [n=1])      

创建一个数组切片,其中包含从头开始的n个元素。

var resultingArray = _.take(testArray, 2);
--> [1, 2]