Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.06.2017, 19:48
jtd jtd вне форума
Новичок на форуме
Отправить личное сообщение для jtd Посмотреть профиль Найти все сообщения от jtd
 
Регистрация: 16.03.2017
Сообщений: 9

Как в javascript передать ссылку?
Зачёт горит, завис на одном задании - намертво

Цитата:
Напишите функцию swap(a, b), меняющую местами значения a и b. Для этого в теле функции используйте дополнительную переменную.

let a = 0, b = 1;
swap(a, b);
console.log(a); // 1
console.log(b); // 0
Что-то я не пойму как реализуется ссылочный тип в JS

function (a, b) {
  var c = a;
  a = b;
  b = c;
}


- бесполезно, меняется только внутри функции.

function (&a, &b) {


- ошибка синтаксиса.
Ответить с цитированием
  #2 (permalink)  
Старый 15.06.2017, 20:02
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

<head>
	<meta charset="utf-8">
</head>
<body>
	<script>
var a = 0, b = 1;
function swap () {
var c = a;
  a = b;
  b = c;
}
swap();
console.log(a); // 1
console.log(b); // 0
</script>
</body>
Ответить с цитированием
  #3 (permalink)  
Старый 15.06.2017, 20:05
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

даже ничего передавать не надо, функция сама возьмет если ей понадобится.
Ответить с цитированием
  #4 (permalink)  
Старый 15.06.2017, 20:10
jtd jtd вне форума
Новичок на форуме
Отправить личное сообщение для jtd Посмотреть профиль Найти все сообщения от jtd
 
Регистрация: 16.03.2017
Сообщений: 9

Rise,
я не понял что изменится если написать например function swap(x1, x2) ?
До переданных переменных никак не "дотянуться"
Ответить с цитированием
  #5 (permalink)  
Старый 15.06.2017, 20:10
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

Сообщение от Rise Посмотреть сообщение
j0hnik, но по условию задачи должны быть аргументы)
Если так то да, как вы сказали изменить имена аргументов

let a = 0, b = 1;
function swap (c,d) {
var c = a;
  a = b;
  b = c;
}
swap(a,b);
console.log(a); // 1
console.log(b); // 0
Ответить с цитированием
  #6 (permalink)  
Старый 15.06.2017, 20:11
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

Rise, в условии задачи не сказано, что параметры должны лежать вне функции. Полагаю, нужно поменять параметры местами внутри самой функции и в ней же вывести результат.
Ответить с цитированием
  #7 (permalink)  
Старый 15.06.2017, 20:16
jtd jtd вне форума
Новичок на форуме
Отправить личное сообщение для jtd Посмотреть профиль Найти все сообщения от jtd
 
Регистрация: 16.03.2017
Сообщений: 9

j0hnik,
а если переменные a и b по-другому названы?
Ответить с цитированием
  #8 (permalink)  
Старый 15.06.2017, 20:21
jtd jtd вне форума
Новичок на форуме
Отправить личное сообщение для jtd Посмотреть профиль Найти все сообщения от jtd
 
Регистрация: 16.03.2017
Сообщений: 9

Вы наверно неправильно поняли, нужен swap точно такой же как в C++
Ответить с цитированием
  #9 (permalink)  
Старый 15.06.2017, 20:22
jtd jtd вне форума
Новичок на форуме
Отправить личное сообщение для jtd Посмотреть профиль Найти все сообщения от jtd
 
Регистрация: 16.03.2017
Сообщений: 9

Rise,
да ёбаный в рот, а нахуй ты мне лечишь за названия переменных, а потом говоришь что "без разницы как названы", пиздец блять.
Ответить с цитированием
  #10 (permalink)  
Старый 15.06.2017, 20:26
Аватар для Alexandroppolus
Профессор
Отправить личное сообщение для Alexandroppolus Посмотреть профиль Найти все сообщения от Alexandroppolus
 
Регистрация: 25.10.2016
Сообщений: 1,012

Сообщение от Rise
в js по ссылке передаются только объекты
точнее, ссылки на объекты передаются по значению.

т.е. даже если бы эти a и b из задачи были объектами, то в таком виде задача всё равно бы не решалась, в общем случае.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как имея ссылку с редиректом получить реальную ссылку в JavaScript? xtfkpi Node.JS 1 06.11.2015 15:38
Как передать значение в функцию в переменную с нужным именем? bratkovsky Общие вопросы Javascript 1 12.10.2015 08:18
как передать результат запроса ajax в переменную javascript? Irina_hines jQuery 4 07.06.2015 18:58
как значение переменной из javascript передать в php? mobiledeveloper Общие вопросы Javascript 1 02.05.2012 20:00
Как передать параметры из дочернего окна в родительское с задержкой? javascript_pupil Общие вопросы Javascript 15 23.11.2010 21:42