Javascript 将jquery扩展结果分配给此
我正在做以下(示例): 现在要将此配置分配给“this”,我需要执行以下操作:Javascript 将jquery扩展结果分配给此,javascript,jquery,Javascript,Jquery,我正在做以下(示例): 现在要将此配置分配给“this”,我需要执行以下操作: for (var key in config) this[key] = config[key]; 我可以用更好的方法吗?我将假设您在某个地方执行了一个新名称配置(要设置此) 现在我认为jQuery的extend方法正是您想要做的。引用文件,它说: 将两个或多个对象的内容合并到第一个对象中 所以你可以简单的做 function NameConfig(cfg) { var config = $.exte
for (var key in config)
this[key] = config[key];
我可以用更好的方法吗?我将假设您在某个地方执行了一个
新名称配置
(要设置此
)
现在我认为jQuery的extend
方法正是您想要做的。引用文件,它说:
将两个或多个对象的内容合并到第一个对象中
所以你可以简单的做
function NameConfig(cfg) {
var config = $.extend(this, {
name: 'John',
lastName: 'Doe'
}, cfg);
}
它将按预期工作
话虽如此,我不建议直接写入此,因为很容易出现一些名称空间问题。
也许只要在上添加config
属性就可以了(当然,这取决于您的用例)
this.config=$.extend(/*…*/)
您到底想实现什么?第二个代码示例中的循环将只是config
的一个克隆,但是这个
指的是什么?这个
应该指的是NameConfig
,还是我错了?你在某处做新的NameConfig
。在这种情况下,它将引用NameConfig
实例。否则它将不会引用任何未明确设置的内容。是的,很抱歉,我在这里执行了一个newnameconfig
somehwere
function NameConfig(cfg) {
var config = $.extend(this, {
name: 'John',
lastName: 'Doe'
}, cfg);
}