Подтвердить что ты не робот

Назначение оператора запятой в JavaScript (x, x1, x2,..., xn)

В JavaScript (x, x1, x2, …, xn) всегда возвращается xn.

В Python этот код называется tuple и возвращает разные значения.

Мой вопрос в том, какова цель этого кода в JavaScript? У вас есть практический пример?

4b9b3361

Ответ 1

Оператор запятой оценивает каждый операнд, но возвращает результат последней оценки. Его можно использовать для инициализации нескольких переменных в цикле for.

var str = "Hello, World!";
for(var i = 0, len = str.length; i < len; i++)
    console.log(str.charAt(i));

Изменить: как указано в комментариях, это не настоящий пример оператора запятой, это просто var. Вы можете увидеть эту страницу для фактических примеров.

Ответ 2

http://en.wikipedia.org/wiki/Comma_operator

Как и в C и С++, оператор запятой оценивает как левый, так и правый операнды, возвращая правый операнд. В терминах практического использования a, b можно использовать вместо a ? b : b, а также использоваться как ограниченный способ подгонки нескольких "операторов" в один оператор, например, в первой или третьей части for цикл.

Обратите внимание, что объявление и/или определение нескольких переменных с var, разделенных запятыми, не использования оператора запятой, даже если оно использует символ запятой. Оператор запятой оценивает и формирует выражение, которое может использоваться как значение как часть большего выражения или оператора. var - это полный тип оператора, который принимает вид

var name1 [= value1][, name2 [= value2][, ...]];

Ответ 3

MDC docs имеет хороший пример практического использования для оператора запятой:

Если a является двумерным массивом с 10 элементами на стороне, следующий код использует оператор запятой для одновременного увеличения двух переменных. Код печатает значения диагональных элементов в массиве:

for (var i = 0, j = 9; i <= 9; i++, j--)
  document.writeln("a[" + i + "][" + j + "] = " + a[i][j]);