js1={"a1":"a1"、"a2":"a2"}
js2={"b1":"b1"、"b2":"b2"}
js1、js2为json对象
如何把js1中的对象和js2中的对象相加形成一个新的json对象?
上面这个方法,什么对象都可以相加,主要是理解for...in的用法
function extend(destination, source) {
for (var property in source)
destination[property] = source[property];
return destination;
}
var js1={"a1":"a1", "a2":"a2"};
var js2={"b1":"b1", "b2":"b2"};
extend(js1, js2);
for(var j in js1) {
alert(js1[j]);
}
[code="javascript"]
function extend(destination, source) {
for (var property in source)
destination[property] = source[property];
return destination;
}
[/code]
[url=http://docs.kissyui.com/]KISSY[/url]库也有封装这功能,[url=http://docs.kissyui.com/kissy/docs/seed/kissy.html#method_merge]KISSY.merge[/url]
[code="js"]var S = KISSY,
a = { a: 'a' },
b = { b: 'b' },
c = { b: 'b2', c: 'c' };
var o = S.merge(a, b, c);
S.log(o.a); // => 'a'
S.log(o.b); // => 'b2'
S.log(o.c); // => 'c'
// 常用的使用场景:
var defaultConfig = {
/* ... */
};
function ClassA(config) {
// 合并配置信息
config = S.merge(defaultConfig, config);
}[/code]