我有一个对象,需要为每个键和值获取一个数组。我使用了 Object.keys (也尝试了 Object.getOwnPropertyNames())和 Object.values() 但都返回零长度数组。我确认该对象确实具有值。
下面的代码在 jFiddle 中运行良好,但在我的环境中为 Object.keys 和 Object.values 调用返回零长度数组。在这里使用jFiddle:https://jsfiddle.net/ca2xL0bf/
我的环境:Eclipse Neon、Tomcat 8.5。浏览器:在 Chrome 和 IE11 上进行了测试。
代码或特定环境可能有什么问题?
谢谢
亚历克斯
function countPLines(data){
var pl = data.split(',');
pl.forEach(function(entry){
pLines[entry] = (pLines[entry] || 0) + 1;
});
}
function createChartData(){
console.log(pLines);
console.log(Object.keys(pLines));
console.log(Object.values(pLines));
}
var pLines = {};
var data = ['a', 'b', 'c,a,b', 'a,b'];
data.forEach(function(ele) {
countPLines(ele);
});
createChartData();
最佳答案
您需要使用相同的名称:pLines
与 PLines
。
function countPLines(data) {
var pl = data.split(',');
pl.forEach(function(entry) {
pLines[entry] = (pLines[entry] || 0) + 1;
});
}
function createChartData() {
console.log(pLines);
console.log(Object.keys(pLines));
console.log(Object.values(pLines));
}
var pLines = {};
var data = ['a', 'b', 'c,a,b', 'a,b'];
data.forEach(countPLines);
createChartData();
关于javascript - Object.keys 和 Object.values 返回对象的零数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58399934/