追加到对象文本
Appending to an object literal
我将对象文字传递给如下函数:
pre( {model:'MUserTry'} );
然后我想增加它,但我最终像这样写它。
pre : function( o_p ) {
o_p = {
result: '0',
page : {}
};
模型现在消失了,因为o_p是全新的
追加对象属性的最佳方法是什么。
你现在必须明确定义它们吗?
o_p.result = 0;
o_p.page = {};
或者是否有一个函数可以让我写出对象文字并将它们组合在一起?
有点像这样
object1.push (object2 );
若要添加新的对象属性或方法,请使用点运算符:
obj.dog = "woof";
这也是等效的:
obj["dog"] = "woof";
在您的代码中,局部变量o_p由赋值重新定义:
function( o_p ) {
// assign a new value to local variable o_p
// object passed as an argument is untouched
o_p = {
result: '0',
page : {}
};
}
你可以像这样合并你的对象:
function( o_p ) {
var mergee = {
result: '0',
page : {}
};
for (var attrname in mergee) { o_p[attrname] = mergee[attrname]; }
}
或者,如果可以使用 JQuery,则可以只使用 extend 方法:
function( o_p ) {
var mergee = {
result: '0',
page : {}
};
$.extend(o_p, mergee);
}
您可以通过分配给属性来添加属性:
o_p.result = '0';
这不会创建新对象,从而保留model
属性。
相关文章:
- jQuery匹配JSON对象的部分文本
- JavaScript正则表达式文本与RegExp对象
- 文本表示法VS.构造函数,用于在JavaScript中创建对象
- 嵌套对象文本访问父级
- .notion vs.[]notation |插入到文本对象中
- 在node.js中使用JavaScript从JSON对象获取和设置文本内容
- 如何从jQuery对象文本正确调用服务器端ASP.NET并将数据返回给jQuery
- 在SVG中创建带有外来对象的文本区域的Javascript不起作用
- 使用javascript函数检索隐藏的文本值时出现对象HTMLinputElement错误
- TextInput onChange事件接收的是文本对象而不是字符串
- 使用结构 js 向右/向左倾斜画布文本对象
- 文本对象到路径:如何从使用Cambam字体的Raphael js中使用打印方法时生成的双路径中删除单个路径
- 将其绑定到嵌套文本对象中
- jQuery在单击不同的输入文本对象时替换文本
- 当将多个子元素附加到svg文本对象时,每次都需要一个新的子元素
- 如何在结构文本对象中应用自定义字体
- Javascript文本对象符号This vs Object Name
- 如何在PIXI.js的本地容器中居中文本对象
- 文本对象中的HTML
- 为函数中的文本对象设置样式