Javascript 如果对象中的键相同,则添加值
如果我添加到此对象,例如obj.bob=“12”, 有没有办法把它添加到bob:26而不是用bob:12替换? 多谢各位 所以,你用这种方式Javascript 如果对象中的键相同,则添加值,javascript,object,key,key-value,Javascript,Object,Key,Key Value,如果我添加到此对象,例如obj.bob=“12”, 有没有办法把它添加到bob:26而不是用bob:12替换? 多谢各位 所以,你用这种方式 var obj = { bob : 14 jan : 2 } 所以,你用这种方式 var obj = { bob : 14 jan : 2 } var obj={ 鲍勃:14, 1月2日 } obj.bob+=12; console.log(obj.bob) var obj={ 鲍勃:14, 1月2日 } obj.bob+=12; console.l
var obj = {
bob : 14
jan : 2
}
所以,你用这种方式
var obj = {
bob : 14
jan : 2
}
var obj={
鲍勃:14,
1月2日
}
obj.bob+=12;
console.log(obj.bob)
var obj={
鲍勃:14,
1月2日
}
obj.bob+=12;
console.log(obj.bob)
您可以使用ES6功能
代理
对象用于定义基本操作(例如属性查找、赋值、枚举、函数调用等)的自定义行为
var obj={bob:14,jan:2},
p=新代理(obj{
设置:功能(目标、道具、值){
目标[道具]=(目标[道具]| | 0)+值;
}
});
p、 bob=10;
console.log(p.bob);//24
p、 简=42;
console.log(p.jane);//42
您可以使用ES6功能
代理
对象用于定义基本操作(例如属性查找、赋值、枚举、函数调用等)的自定义行为
var obj={bob:14,jan:2},
p=新代理(obj{
设置:功能(目标、道具、值){
目标[道具]=(目标[道具]| | 0)+值;
}
});
p、 bob=10;
console.log(p.bob);//24
p、 简=42;
console.log(p.jane);//42
简单且几乎肯定正确的答案是使用,它将右操作数与左操作数相加
var obj = {
bob : 14,
jan : 2
}
obj.bob += 12;
console.log(obj);
您可能需要一个系统,在该系统中,将属性设置为实际将值添加到属性的现有值中。这似乎令人困惑,也不太可能有帮助,但在技术上可以使用:
但是,我不敢相信这可能是理想的行为。简单且几乎肯定正确的答案是使用,它将右操作数与左操作数相加
var obj = {
bob : 14,
jan : 2
}
obj.bob += 12;
console.log(obj);
您可能需要一个系统,在该系统中,将属性设置为实际将值添加到属性的现有值中。这似乎令人困惑,也不太可能有帮助,但在技术上可以使用:
然而,我不相信这可能是理想的行为。增加当前值
obj.bob+=12
obj.bob=obj.bob?obj.bob+12:+12
增加当前值obj.bob+=12
obj.bob=obj.bob?obj.bob+12:+12
我应该更仔细地阅读,这正是OP想要的。这可以在没有使用setter和getter的代理的情况下完成。我应该更仔细地阅读,这正是OP想要的。这可以在没有使用setter和getter的代理的情况下完成。如何处理新属性?@NinaScholz问题中的对象文本中指定了初始值。这反映了这一点。如何处理新属性?@NinaScholz问题中的对象文本中指定了初始值。这反映了这一点。