Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Возврат данных через параметры функции (https://javascript.ru/forum/misc/36311-vozvrat-dannykh-cherez-parametry-funkcii.html)

jsjob 11.03.2013 15:01

Возврат данных через параметры функции
 
Как сделать функцию с "переменными" параметрами так, чтоб получить аналог процедур/функций с переменными var в Pascal или эффект ссылок/указателей на C?

Спасибо

рони 11.03.2013 15:25

jsjob,
http://javascript.ru/arguments

rgl 11.03.2013 16:03

1. Если вы передаете функции в качестве параметра объект (или массив), и внутри функции меняете какие-то свойства переданного объекта, то получаете эффект var в паскале или передачи по ссылке в С.
2. Если вы передаете число или строку, то это не возможно
3. Если вы внутри функции присваиваете параметру новое значение, то, даже если это был объект, эффект var/ссылки теряется.
Влиять на это нельзя, т.е. невозможно передать объект по значению, так же как число или строку по ссылке.

jsjob 11.03.2013 17:31

rgl, спасибо.

Всёж JS меня удивляет. С одной стороны уникальная гибкость, которую не знаешь как благоразумно применить, с другой - удивительное отсутствие совершенно естественных и традиционных вещей.

megaupload 11.03.2013 18:49

параметры передаются "по значению" а не по указателю, и что в этом плохого? по моему наоборот это лишная инкапсулируемость. ведь если надо дать друго функции что то обработать то отдавай ей обьект она его обраьботает и вернет тебе а ты в функци вызывальщие сделаешь сэтим обектов что надо.. то есть там больше функции а не процедуры. ГРУБО говоря


Часовой пояс GMT +3, время: 11:23.