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

什么是面向对象的JavaScript(四)——多态

2016-12-30 23:19 288 查看
javascript无法直接实现多态的效果,我们需要自己判断参数的个数,例如:

function Calculate(){
// 无参返回10
function zero(){
return 10;
}
// 一个参数返回10+num
function one(num){
return 10 +num
}
// 两个参数返回 和
function two(num1,num2){
return num1+num2
}

this.add = function(){
// 获取参数长度
var arg = arguments,len =arg.length;
switch(len){
case 0:
return zero();
case 1:
return one(arg[0]);
case 2:
return two(arg[0],arg[1]);
}
}
}

//test
var c = new Calculate();
alert(c.add()); //10
alert(c.add(5)); //15
alert(c.add(5,4)); //9
alert(c.add(5,4,3)); // undefined
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: