JavaScript实用方法之extend
extend方法顾名思义,就是用来扩展对象属性的,jQuery的工具函数中也有extend方法(传送门:http://julying.com/jQuery-1.6-api/#p=jQuery.extend)。我认为extend方法的最大用处不是扩展普通对象,而是扩展原型对象,实现多重继承。如果自己写前端库的话,用extend组织代码,可以写出有漂亮组织结构的优雅代码。
下面是extend方法的简单实现,将extend作为object的静态方法
/*
* 用一个或多个其他对象来扩展一个对象,返回被扩展的对象。
* 静态方法定义在哪个对象底下都没所谓
* 如果参数为空,则返回 null;
* 如果只有一个参数,则直接返回该参数;
* 否则:把第二个参数到最后一个参数的成员拷贝到第一个参数对应中去,并返回第一个参数。
*/
Object.extend = function()
{
var len = arguments.length;
if(len == 0)
{
return null;
}
var This = arguments[0];
if(len == 1)
{
return This;
}
for(var i=1; i<len; i++)
{
var obj = arguments[i];
for(var name in obj)
{
This[name] = obj[name];
}
}
return This;
};

浙公网安备 33010602011771号