Javascript将数组重新映射为对象,0(零)值被排除在外
Javascript remaping array into object the 0 (zero) values are excluded
我有一个(另一个)问题:将数组重新映射为对象,0(零)值被排除在外。为什么以及如何做到不忽略这个值?我需要这个0(0)值。:)
我的数组:
var data = {
"queryInfo": {
"totalRows": "18"
},
"resultset": [
["A", "MAXI", "ACC - GC", "SER", 5646.5],
["A", "MAXI", "ACC - SACC", "KIT", 2474.93],
["A", "MAXI", "ACC - SACC", "NET", 5418.72],
["A+", "MAXI", "ACC - DIV", "FORM", 1531.04],
["A+", "MAXI", "ACC - DIV", "FOR", 1147.5],
["A+", "MAXI", "ACC - DIV", "HI TECH", 0],
["A+", "MAXI", "ACC - GC", "TEM", 435],
["A+", "MAXI", "ACC - LPI", "ALYS", 651],
["A+", "MAXI", "ACC - LPI", "FIR", 0],
["A+", "MAXI", "SCC", "DRUM", 3693.36],
["A+", "MAXI", "SCC", "HEL", 0],
["A+", "MAXI", "SCC", "LOT", 873],
["B", "MAXI", "SCC", "PUR", 9356],
["B", "MAXI", "SCC", "SQU", 48474.06],
["B", "MAXI", "#null", "HA", 1711],
["B", "MAXI", "#null", "#null", 1197.6],
["#null", "MAXI", "#null", "#null", 2940],
["#null", "#null", "#null", "#null", 2372]
],
"metadata": [{
"colIndex": 0,
"colType": "String",
"colName": "CP"
}, {
"colIndex": 1,
"colType": "String",
"colName": "ST"
}, {
"colIndex": 2,
"colType": "String",
"colName": "GR"
}, {
"colIndex": 3,
"colType": "String",
"colName": "PR"
}, {
"colIndex": 4,
"colType": "Numeric",
"colName": "VALUE"
}]
};
和我的功能:
function recom(resultset) {
var obj = {};
for (var j = 0; j < resultset.length; j++) {
if (resultset[j]) {
obj[data.metadata[j].colName] = resultset[j];
}
}
return obj;
}
var arr = [];
for (var i = 0; i < data.resultset.length; i++) {
if (data.resultset[i] !== null) {
arr.push(recom(data.resultset[i]));
}
}
此函数获取每个元数据,并作为键添加到下一个final数组中。正如你在这个小提琴中看到的,结果必须是这样的:{"CP":"+","圣":"MAXI"、"GR":"鳞状细胞癌"、"公关":"鼓","价值":3693.36},但当指数4的数据。Resultset是0(零)我的函数在该级别返回任何东西:{"CP":"+","圣":"MAXI"、"GR":"鳞状细胞癌"、"公关":"冥界"}
正确的结果是:{"CP":"+","圣":"MAXI"、"GR":"鳞状细胞癌"、"公关":"冥界"、"价值":0}
由于resultsel的0值,索引"VALUE"缺失。如何使我的功能正常工作。
谢谢。
将recom
中的条件更改为显式检查零:
所以不用这个:
if (resultset[j])
试试这个:
if (resultset[j] === 0 || resultset[j])
相关文章:
- 如何在映射数组中添加换行符
- javascript结合了数组和字典
- 需要帮助设置json数组
- 不能从angular2中的子组件指定父组件中的数组
- 使用JS将数组转换为json对象
- 数组在递归方法中设置为null
- knockoutjs可观察数组
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 下划线的 _.,但不排除以下数组中的子字符串
- 如何将元素添加到动态数组并排除现有元素
- 从数组中排除值后,获取下一个最高日期值
- 从数组中排除给定对象
- 从XML文件中排除一组单词,并将它们存储在Javascript中的数组中
- 查找一个项目是否在数组中,并使用angularjs将其从选择选项中排除
- 从数组返回对象时排除属性
- angularJs会从数组中排除已经选定的项
- MongoDB查询:排除子数组中的对象
- Javascript将数组重新映射为对象,0(零)值被排除在外
- jQuery:从数组中排除具有id的元素
- 将数组复制到变量,同时排除项-性能