javascript访问数组属性传递给回调

时间:2014-04-01 22:13:32

标签: javascript callback scope pass-by-reference pass-by-value

通过回调函数,如何访问属性字符串数组的每个值?我希望能够使用Array#filter来保存长度小于x的字符串。

var arr1 = [
  'Tempor quis esse consequat sunt ea eiusmod.',
  'Id culpa ad proident ad nulla laborum incididunt.',
  'Ullamco in ea et ad anim ulam est.',
  'Est ut irure irure nisi.'
];

这是我的过滤功能:

var arr2 = arr1.filter(function(value, index, array) {
    return value.length < x;
});

唉,我收到一条TypeError消息,上面写着“TypeError: Cannot read property 'length' of undefined

我所要做的就是让我的回调返回长度小于x个字符的字符串。我做错了什么?

1 个答案:

答案 0 :(得分:0)

您的代码正在运行,显然x未定义,但我假设您在外部上下文中定义x,因此在过滤器回调中它可用于关闭。

您运行此代码的位置?

在上一款firefox游戏机中,它运行良好。