Перегрузка методов и функций
Есть ли в javascript перегрузка методов и функций?
|
Т.к. объекты это хэши, то очевидно нет. А т.к. JavaScript язык нетипизированный, то и быть не может.
Работа с аргументами функций в JS достаточно прозрачна, так что лично я в перегрузке не вижу смысла. |
Да вы правы вот этот код показывает, что перегрузок нет
function cout() { alert(1); } function cout(str) { alert(str); } cout(); cout("Привет"); |
И ещё хотел спросить, в книге есть пример чего вроде такого, но там толи это очень сложно, то ли .... ?
cout(value=6,str='Привет'); Но этот способ не работает function cout(str,value) { alert("str="+str); alert("value="+value); } cout(value=6,str='Привет'); |
Цитата:
|
если под перезагрузкой функций вы понимаете - перезоздание.. то чем не вариант:
function bla(){ alert('bla'); } delete window.bla; function bla(){ alert('другое bla'); } |
|
Перегрузка функций по параметрам - это ограничение компилируемых языков со статической типизацией. JS избавлен от этого. Здесь можно, при вызове одной и той же функции, передавать множество параметров разных типов.
|
Цитата:
|
Я задачю немного упростил, просто бывает так что надо передать огромное количество переменных,
т.е. cout('Привет',true,6,10,null,.....,n); И чтобы не забыть последовательность сделать именно так, cout(value=6,str='Привет',....,n); Но видимо это нельзя, т.е. надо передавать объекты похоже? |
Часовой пояс GMT +3, время: 23:43. |