使用 jQuery 扩展功能并遇到了我试图扩展未定义的目标对象的情况。我没有收到任何错误,但源对象未按预期扩展。我曾假设 jQuery 会创建一个空白对象并扩展到该对象,但情况似乎并非如此。我可以通过自己创建空对象来解决这个问题,但我正在寻找一些确认,即 jQuery 的扩展就是这种情况。我在 jQuery Api 中找不到关于目标对象未定义的任何内容。
编辑:对不起,我应该包括一个 JSFiddle -在这里或看下面的例子。这样做需要修改我的问题。如果您查看小提琴选项对象存在,但我试图扩展的属性不存在。这就是我的问题所在。我猜 jQuery 不会以这种方式创建空属性。我需要手动将属性添加到对象中吗?
options = {newdata:true};
$("#click").click(function(){
console.log(options);
someFunc(options);
});
function someFunc(options) {
$.extend(options.data, {
someNewData: true
});
console.log(options);
}