简单的补个例子上,希望楼主能把addMethods的第二个参数大致有几种情况写清楚。
我再把我的答案补充完整
//判断类型的方法var isType = function(object) {
return Object.prototype.toString.call(object)
.match(/^\[object\s(.*)\]$/)[1]
}
var addMethods = function(obj, arr){
if(isType(obj) !== 'Object'){
return alert('第一个参数必须是对象!')
}
//TODO
}
对象合并:
var obj = {a:1, name: 'test'}var shuxing = {name:"super",sex:"19",work:"IT"}
for(var r in shuxing){
eval("obj."+r+"=shuxing."+r)
}
alert(obj.a)
alert(obj.name)
alert(obj.sex)
alert(obj.work)
当然可以写成函数方式:
function objMerger(obj1, obj2){
for(var r in obj2){
eval("obj1."+r+"=obj2."+r)
}
return obj1
}
obj = objMerger(obj, shuxing)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)