Overload 快速入门
使用 Overload.add ,我们可以创建一个支持重载的函数,并添加第一个重载。
var sum = Overload
.add("Number, Number",
function(x, y) { return x + y; })
再次使用 add ,可以添加下一个重载。
sum
.add("Number, Number, Number",
function(x, y, z) { return x + y + z; });
之后只要你调用这个函数,对应的重载就会被调用。
alert(sum(1, 2));
alert(sum(3, 4, 5));
如果形参列表包含自定义类型,你可以使用数组来表示某一个重载的形参列表。
var User = function(name) { this.name = name; };
var sayHello = Overload
.add([User]
function(user) { alert("Hello, " + user.name); });
对于函数的调用者而言,这一切都是透明的。同时, Overload 也为组织函数逻辑带来了极大的方便。