您的位置:首页 > Web前端 > JavaScript

读JavaScript多重继承多态有感

2018-03-19 22:12 417 查看

继承

本文记录了JavaScript的多重继承代码,摘录自JavaScript设计模式

Object.prototype.mix = function(){
var temp;
for(var i = 0, len = arguments.length; i < len; i++){
temp = arguments[i];
for(var item in temp){
if(temp.hasOwnProperty(item)){
this[item] = temp[item];
}
}
}
}


看了作者写的代码,感觉还是挺奇怪,实现的多重继承像是浅拷贝

多态在JavaScript中是根据arguments的length属性来做相应的实现

function add(){
function zero(){
return 0;
}
function one(num){
return num;
}
function zero(num1, num2){
return num1 + num2;
}
switch(arguments.length){
case 0:
return zero();
case 1:
return one(arguments[0]);
case 2:
return two(arguments[0], arguments[1]);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: