javascript - if(categories!== [])也返回空数组

时间:2016-11-17 11:09:36

标签: javascript

我有一个过滤功能来映射一些数据。然后我想检查过滤后是否剩余一些数据并记录结果。出于某种原因,我的输出中也有空数组。

// Filter categories
let categories = sport.Category.filter(filterById('a', 'b'));
sport.Category = categories;
// If category was found
if(categories !== []) {
    console.log(util.inspect(categories, false, null));
}

我做错了什么?

2 个答案:

答案 0 :(得分:0)

使用:

if(categories.length > 0)

答案 1 :(得分:0)

检查数组的长度,而不是它与空数组相同。像你一样检查它是不准确的,并且在类别数组将具有一些"元数据"加入。

// Filter categories
let categories = sport.Category.filter(filterById('a', 'b'));
sport.Category = categories;
// If category was found
if(categories.length > 0) {
    console.log(util.inspect(categories, false, null));
}