Javascript在运行时扩展对象
Javascript to expand object at runtime?
这是可能的吗?假设您有以下内容:
var settings = {
name : 'bilbo',
age : 63
}
你能在运行时动态地添加另一个属性吗?
var settings = {
name : 'bilbo',
age : 63,
eyecolor : 'blue'
}
只需使用点符号来添加新属性:
var settings = {
name : 'bilbo',
age : 63
}
settings.eyecolor = 'blue';
// or: settings['eyecolor'] = 'blue';
// both of the above will do the same thing:
// add a property to your object
console.log(settings);
/* Logs:
{
name : 'bilbo',
age : 63,
eyecolor: 'blue'
}
*/
注:这是一个普通的JavaScript对象字面量。这与JSON无关。
JSON只是一种将对象/数组表示为看起来像JavaScript代码的字符串的方法。
Simple:
settings.eyecolor = 'blue';
或
settings['eyecolor'] = 'blue';
将在运行时将eyecolor
字段添加到设置对象中。
var settings = {
name : 'bilbo',
age : 63
};
settings.eyecolor = 'blue'; // can be run anywhere once settings has been defined
console.log(settings.name, settings.age, settings.eyecolor); // "biblo" 63 "blue"
这个"JSON"对象是一个普通的JavaScript对象。你可以这样做:
settings.eyecolor = 'blue';
或
settings['eyecolor'] = 'blue';
是的,你可以这样编码:
settings.eyecolor = "blue";
是
var settings = {
name : 'bilbo',
age : 63
}
settings.eyecolor = 'blue';
是的,你可以简单地;
settings["eyecolor"] = "blue";
这将出现在任何重新序列化的字符串中。
相关文章:
- 在这个使用hasOwnProperty的对象扩展程序中有一个错误,I'我不确定那个bug是什么,也不确定这个扩展
- FabricJS CurvedText对象(扩展)在更新间距和文本属性时未显示
- 如何为特定的javascript对象扩展数组或对象原型
- 具有函数继承的对象扩展数组
- 将 jQuery 对象扩展到我自己的对象
- HTMLCollection 对象扩展
- Javascript 对象扩展
- jQuery用一个对象扩展$.fn
- 有没有一种方法可以在javascript中隔离本机对象扩展
- Backbone或javascript对象扩展错误
- 从另一个对象扩展而不使用object.JavaScript中的assign (ES6特性)
- 对象扩展vs.对象赋值
- 是否可以将一个对象扩展为“;一个函数
- 如何在jquery中用子对象$.扩展对象
- 为什么我有一个共享缓存时,我jQuery.使用相同的缓存对象扩展两个对象
- 使用美元.使用用户定义的对象扩展
- es7对象扩展表示法如何创建浅拷贝来替换原始对象
- 如何使用新对象扩展 $.fn
- 如何在 javascript 中让多个对象扩展 1 个对象
- IE8中对象扩展后的奇怪setAttribute行为