Оператор запятой оценивает оба своих операнда (слева направо) и возвращает значение второго операнда.
Однако, когда я попытался запустить <script> alert(1, 2); </script>, он отображает "1" вместо "2".
Я что-то недопонимаю?
Ответ 1
В контексте вызова функции запятая используется для разделения параметров друг от друга. Итак, что вы делаете, это передать второй параметр в alert(), который бесшумно игнорируется.
То, что вы хотите, возможно таким образом:
alert((1,2));
Дополнительные скобки образуют параметр самостоятельно; внутри них вы можете использовать запятую как оператор.
Ответ 2
Запятая (,) также является разделителем параметров.
Используйте alert((1,2)) вместо этого.
Ответ 3
Когда вы используете его таким образом, запятая не является оператором, это разделитель между параметрами вызова метода alert.
Если вы помещаете круглые скобки вокруг них, чтобы это выражение, оно покажет вам 2: