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

JavaScript面向对象——实现多态

2018-03-18 22:28 519 查看
JavaScript面向对象——JS实现多态
学过其他面向对象编程语言的伙伴应该都知道有种特性叫多态,那么在JavaScript如何实现?这个应该比较简单,对传入的参数做判断实现多种调用方式就行,直接放例子好了。 function add() {
var arg = arguments,
len = arguments.length
switch (len) {
case 0:
return 10
case 1:
return 10 + arg[0]
case 2:
return arg[0] + arg[1]
}
}
// test
console.log(add())
console.log(add(7))
console.log(add(7, 9))结果:



也可写成类的形式: function Add() {
function zero() {
return 10
}
function one(num) {
return 10 + num
}
function two(num1, num2) {
return num1 + num2
}
this.add = function () {
var arg = arguments,
len = arguments.length
switch (len) {
case 0:
return zero()
case 1:
return one(arg[0])
case 2:
return two(arg[0], arg[1])
}
}
}
// test
var a = new Add()
console.log(a.add())
console.log(a.add(7))
console.log(a.add(7, 9))结果:



是的,就这样实现了~ ~ ~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: