理解' arr.filter(callback [,thisArg])'句法

时间:2016-02-02 00:26:59

标签: javascript arrays filter

arr.filter(callback[, thisArg])

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter

所以,这是我应该理解的文档中的示例。

Arr =某个数组,很棒。 filter =数组的方法,很棒。回调=一些功能,基本上。大。但[, thisArg]是什么?

查看一些example on stackoverflow会显示:

objects.filter(function (obj) {
  return obj.someIntProp <= 1000 
});

我理解这是如何工作的,我不需要帮助使用它。我只是想了解[, thisArg]应该如何告诉我该函数将每个对象放在一个数组中。我觉得我错过了一些显而易见的事情,大多数人都是在Coding 101中学到的。

2 个答案:

答案 0 :(得分:5)

thisArg参数是可选的。如果你传递它,那么当运行时调用你的回调时,它会将this设置为该值。

它在很多情况下都没用,但是当你想要的时候它就是其中之一。当然,另一种方法是将回调绑定到thisArg传递的任何内容。

按惯例,MDN网站使用[, thisArg]表示法表示该参数是可选的。

答案 1 :(得分:1)

这意味着参数是可选的。您可以或不通过它,该功能无论如何都是有效的。如果您决定通过它,那么该函数中的单词this将访问给定的值。