3 个对象中的 Javascript 求和值

标签 javascript arrays json object

您好,我正在尝试对 3 个 json 对象中的值求和。

var things = {
    "noun": {
        "syn": ["belongings", "holding", "stuff", "property"]
    }
};
var stuff = {
    "noun": {
        "syn": ["belongings", "holding", "property"]
    }
};
var crap = {
    "noun": {
        "syn": ["things", "holding", "waste"]
    }
};

result = {};
word1 = things.noun.syn
for (key in word1) {
    nk = word1[key];
    if (result.nk == undefined) {
        result.nk = 1
    } else {
        result.nk = result.nk + 1;
    }
}
console.log(result);​

例如,我得到的结果是 result.nk 而不是 result.belongings

我一直在 jsfiddle 中胡闹:http://jsfiddle.net/qunUz/2/

如何计算每个值出现的次数?

最佳答案

要访问给定字符串值的属性,您应该使用括号表示法

result[nk] //access the property defined by nk's value

而不是你正在使用的点符号

result.nk     //access the 'nk' property
result['nk']  //equivalent in bracket notation.

关于3 个对象中的 Javascript 求和值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10200566/

相关文章:

javascript - 如何使用 d3.js 库重新加载 div

javascript - 删除对象属性不唯一的数组项

python - 是否可以使用 python 将磁盘上的不连续数据映射到数组?

java - 映射嵌套枚举时获取 JsonMappingException

javascript - 如何在angularjs中对不同的json数据使用通用服务?

java - 如何在Java中解析JSON

javascript - 将多边形类型的数据存储在 `SQLite`数据库中

javascript - 如何在 SAP UI5 代码中生成 UUID?

javascript - 如何使用 Meteor.http.call

javascript - 基于排序数组更新组件。 Angular (4.3)