所以,我正在将哈希推入数组。一些哈希值相同 - 包含所有相同的值。在这些情况下,我想不要将哈希值推入,但是更新原始哈希值为+1。
例如。
var hashes = {};
var newHashes = {};
// in this case, 'h' is a key that CAN exists later on again
hashes[h] = {
val1: 'val1',
val2: 'val2'
}
jQuery.extend(true, newHashesContainer, h)
someArray.push(h)
确定。一段时间后,我有相同的内容,我将其推入PUSH_ARRAY函数
if (newHashContainer[h]) hashes[h].count++
//我知道它已经存在,所以我想现在为它添加一个count属性,并在每次出现相同的密钥哈希时递增。我似乎无法围绕它进行思考。
答案 0 :(得分:0)
如果该属性尚不存在,您只需创建该属性,然后就可以增加该值。
因此,如果您已经检查过hashes[h]
具有您想要的值,并且您只想增加该对象的计数,则可以像这样创建和增加计数:
if (newHashContainer[h]) {
// Assumes that prior code has already make sure
// that hashes[h] exists
// Here, we just make sure that the .count property exists
// and then increment it
if (!hashes[h].count) {
hashes[h].count = 0;
}
hashes[h].count++
}
您的问题并未明确newHashContainer[h]
的作用,但我假设它确保新散列位于hashes
对象中。如果这不是它的作用,请进一步解释您需要帮助的内容或该功能的作用。