@WDev

Присвоение значений по умолчанию аргументам функций?

Уважаемые коллеги.
Несколько лет пользуюсь в браузере кодом вида
function funcName(a=1, b='somestring', c={}){...}
для присвоения значений аргументам функции по умолчанию. Не сам придумал, где-то вычитал.
В Firefox данный подход работает без проблем. Chromium на подобные места выдает ошибку и останавливает работу скрипта.
Собственно вопросы:
1. корректен ли подобный подход для присвоения значений аргументам функции по умолчанию?
2. где почитать?
Ответы: learn.javascript.ru/es-function
P.S.
3. Что в подобном коде может не нравиться Chromium?
  • Вопрос задан
  • 265 просмотров
Пригласить эксперта
Ответы на вопрос 3
romy4
@romy4
Exception handler
Используйте "дедушкин" метод
Ответ написан
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
1. корректен ли подобный подход для присвоения значений аргументам функции по умолчанию?
До ES2015 - нет.
2. где почитать?
learn.javascript.ru
Ответ написан
Комментировать
abyrkov
@abyrkov
JavaScripter
1. Зависит от... компилятора. Да, это добавили в ES6, поэтому, этот вариант некорректен на, скажем, IE10. А вот на последних Chrom'ах и Firefox'ах (и даже на Edge) это корректно.
2. Обратите вннимание на раздел "Примеры на этом сайте" и все станет ясно. learn.javascript.ru/es-modern-usage
3. Версия браузера) Просто обновите Chrome. Или пишите
param = (param === undefined) ? 'something' : param;
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы