Автор:
biophreak
Описание:
Язык: JavaScript
/*
Полиморфизм в JS
Вызываем примерно так:
var = f(1,2); // Здесь произойдет вызов первой ф-ии
var = f(1,2,3,4); // Здесь произойдет вызов второй ф-ии
Ф-ий может быть сколько угодно
*/
function overload() {
var l2f = [];
for(var i=0; i<arguments.length; i++)
if(typeof(arguments[i]) == "function")
l2f[arguments[i].length] = arguments[i];
return function() {
return l2f[arguments.length].apply(this, arguments);
}
}
var f = overload(
function(i, j) { // Первая ф-ия
return i * j;
},
function(i, j, k, l) { // Вторая ф-ия
return (i-j)*(k-l);
}
)
|
Последние размещения:
biophreak (Plain Text)
Raik (PHP)
MUSbKA (Plain Text)
MUSbKA (Plain Text)
nekitozzz (C++)
nekitozzz (Plain Text)
nekitozzz (C++)
ksurent (Perl)
MUSbKA (C++)
stalin_alex (C++)
dzantiev (Plain Text)
unreal (C++)
eug2b (Plain Text)
|