Javascript 创建没有未定义的json
我正在编写一个代码,在这里我需要做一个dynamodb扫描,在那里我需要创建一个带有值的数组响应,当我这样做时,它添加了Javascript 创建没有未定义的json,javascript,json,amazon-dynamodb,Javascript,Json,Amazon Dynamodb,我正在编写一个代码,在这里我需要做一个dynamodb扫描,在那里我需要创建一个带有值的数组响应,当我这样做时,它添加了未定义的。 这是我以前皇后的延续 这是我的密码 var results = []; var array=["a","b"]; for (index = 1; index <= 5; ++index) { var params1 = { TableName: "MyCatTable", FilterExpression: "#
未定义的。
这是我以前皇后的延续
这是我的密码
var results = [];
var array=["a","b"];
for (index = 1; index <= 5; ++index) {
var params1 = {
TableName: "MyCatTable",
FilterExpression: "#rule=:rule",
ExpressionAttributeNames: {
"#rule": "rule"
},
ExpressionAttributeValues: {
":rule": String(index)
}
};
results.push(dynamodb.scan(params1).promise().then(function (data) {
if (data.Items.length == 2) {
var uw = [];
console.log("Entered");
for (var i = 0; i < 2; i++) {
if (array.indexOf(data.Items[i].category) >= 0) {
console.log("pushing");
uw.push(data.Items[i].category);
}
}
if (uw.length > 1) {
return uw;
} else return "x";
} else {
return "x";
}
}));
}
return Promise.all(results);
}).then((data) => {
console.log("----------------------");
console.log(data);
}).catch(err => {
console.log(err)
})
在这里,当我删除返回“x”
时,我得到的输出是
[
undefined,
['a', 'b'],
['a', 'b'],
undefined,
undefined
]
我想知道是否有办法
[
['a', 'b'],
['a', 'b'],
]
将评论扩展为答案
从Javascript数组中删除未定义的值的问题已在中解决,最简单的方法是使用filter
函数(ES6)
将返回删除了未定义的值的数组
另外,请注意,数组中首先出现未定义的值的原因是,.将注释扩展为答案
从Javascript数组中删除未定义的值的问题已在中解决,最简单的方法是使用filter
函数(ES6)
将返回删除了未定义的值的数组
另外,请注意未定义的值首先出现在数组中的原因是,.我不知道当结果未定义时是否可以避免返回。但您可以做的是将结果作为数据进行筛选。筛选(d=>d)
删除未定义的值。@Striped。。。还有虚假的价值观。建议data.filter(d=>d!==undefined)
。谢谢@user202729和Striped。。。这是有效的:)我不知道当结果未定义时是否可以避免返回。但您可以做的是将结果作为数据进行筛选。筛选(d=>d)
删除未定义的值。@Striped。。。还有虚假的价值观。建议data.filter(d=>d!==undefined)
。谢谢@user202729和Striped。。。这起作用了:)
[
['a', 'b'],
['a', 'b'],
]
data.filter(d => d !== undefined)