[ID CS4-CS6] Аргументы функции

Tiburtsy

Топикстартер
15 лет на форуме
Сообщения
60
Реакции
14
Можно ли как-то изменить аргументы из функции?
 

Tiburtsy

Топикстартер
15 лет на форуме
Сообщения
60
Реакции
14
JavaScript:
var a=1, b=2
swap(a,b)//a=2, b=1
Можно ли написать на js Indesign такую функцию swap()
P.S. На Pascal/Delphi такое было возможно через объявление var аргументов
 
Последнее редактирование:

splxgf

12 лет на форуме
Сообщения
7 742
Реакции
3 424
Вроде они почти всегда var.
 

splxgf

12 лет на форуме
Сообщения
7 742
Реакции
3 424
А не, только объекты/массивы передаются по ссылке.
Ну на самом деле замена функции на несколько присваиваний в одну строчку не сильно повлияют на читаемость.
 

Tiburtsy

Топикстартер
15 лет на форуме
Сообщения
60
Реакции
14
JavaScript:
var a=1,b=2,c=3
swap(a,b)//a=2,b=1
swap(b,c)//b=3,c=1
Я про такое. Когда неизвестно какие внешние переменные будут меняться
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 197
Реакции
10 847
Сразу видно поколение жабоскриптологов, судя по ответам никто толком не понял невнятно сформулированного вопроса ;)
Маленькая подсказка:
swap("a","b")
;)
 
Последнее редактирование:

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
Сразу видно поколение жабоскриптологов, судя по ответам никто толком не понял невнятно сформулированного вопроса ;)
Маленькая подсказка:
swap("a","b")
;)

Еще б понять зачем симулировать указатели или ссылки на переменные...
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 197
Реакции
10 847
Еще б понять зачем симулировать указатели или ссылки на переменные...
Ты хочешь сказать, что руль в машине не нужен, а передача параметров по ссылке - пережиток олдфагии и ностальгия по Си?
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
да не, просто интересно зачем это понадобилось в конкретном случае
ну и потом самое простое решение - завернуть их в объект
 
Последнее редактирование:

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 197
Реакции
10 847
Ну я навскидку могу несколько мотиваций данного действия придумать
Самый напрашивающийся пример - портирование либы с си (или в случае топикстартера - паскаля)
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
ну просто если это сортировка какая-то, то ее уже сто раз портировали на js и можно взять готовую )
 

splxgf

12 лет на форуме
Сообщения
7 742
Реакции
3 424
Ты хочешь сказать, что руль в машине не нужен, а передача параметров по ссылке - пережиток олдфагии и ностальгия по Си?
В случае JS - руль где-то рядом. В остальных языках дизайн более менее понятен. В питоне вообще функцию городить не надо, достаточно a, b = b, a
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 197
Реакции
10 847
Ну swap, как я понимаю, чисто для примера был взят, вопрос изначально (в безграмотной формулировке) стоял так:
Можно ли как-то изменить аргументы из функции?
Что в переводе на язык здорового программиста звучит "можно ли в JS передавать параметры по ссылке, как в нормальных языках программирования"
Ответ я дал в сообщении #8
 

Skvoznyak

15 лет на форуме
Сообщения
5 500
Реакции
2 168
ну так если не литерал передавать, он по ссылке и так передается 'hz'
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 197
Реакции
10 847

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 197
Реакции
10 847
Последнее редактирование: