首页 > 代码库 > 自定义extend方法
自定义extend方法
最近计划封装一个原生的js控件,突然发现习惯了jquery的extend方法,使用原生JavaScript竟无从下手。所以只能自己尝试写一个类似jquery extend功能的方法了。
核心代码如下:
function () {
var _isObject, _extend;
_isObject = function (o) { return Object.prototype.toString.call(o) === ‘[object Object]‘; } //判断是否为Object
_extend = function self(target, source) {
var property;
for (property in source) {
if (_isObject(target[property]) && _isObject(source[property])) {
self(target[property], source[property]);//递归
}
target[property] = source[property];
}
}
var arg = arguments;
if (arg.length <= 1) {
return;//直接返回
}
else {
var i;
for (i = 1; i < arg.length; i++) {
_extend(arg[0], arg[i]);
}
}
}
才学疏浅,如有错误,请不吝指正。