艰难的一天,甚至无法弄清楚如何将物品添加到物体中。
var holder = {};
我尝试过以下方法将项目添加到对象:
function AddToHolder(questionid, customerid) {
$(holder).extend({
questionid: questionid,
customerid: customerid
});
console.log(holder);
}
这将返回空
function AddToHolder(questionid, customerid) {
holder.questionid = questionid;
holder.customerid = customerid;
console.log(holder);
}
这会覆盖该对象,因此它不会添加,而是覆盖
答案 0 :(得分:1)
$(holder).extend
并没有完全按照您的意愿行事。你正在做的是扩展包含holder
的jQuery对象。例如:
var $holder = $(holder).extend({
testing: 2
});
console.log($holder.testing); // Shows 2
如果要扩展普通对象而不将其包装在jQuery中,可以使用$.extend:
// Option 1 - Modify the original object
$.extend(holder, { test: 2 });
// Option 2 - Create a new object without modifying the original
var newHolder = $.extend({}, holder, { test: 2 });
答案 1 :(得分:1)
Jquery Extend就像这样工作
function AddToHolder(origin, questionid, customerid) {
$.extend(origin, {
questionid: questionid,
customerid: customerid
});
console.log(origin);
}
要注意不要覆盖,只需检查属性是否存在
function AddToHolder(questionid, customerid) {
if(!holder.questionid){
//assign
}
}