1

Я работаю над классной программой на canvas javascript/ProcessingJS khanacademy.org, и я хочу использовать параметры по умолчанию. Однако, он показал это окно с ошибкой:Khanacademy Javascript Ошибка параметра по умолчанию Canvas

'default parameters' is only available in ES6 (use esnext option). 

Что это такое и как его исправить?

+0

Если я помню это вопрос с JS 2.6.x, а не 100% конечно, за этим. –

+0

Я чувствую, что есть решение этого, как подсказывает опция esnext в самом сообщении. Однако я понятия не имею, что это значит, как его использовать или если это возможно. – Pocketkid2

+0

Не уверен, что предложить в отношении устранения конкретной проблемы, особенно без дополнительной информации; но ES6 - это JS 2.6.x, если я помню. Мне говорят, что это сильно изменило синтаксис языка, поэтому это, вероятно, будет лучшим местом для начала поиска. Я не использую JS почти достаточно, чтобы сказать, что конкретно вызвало бы эту ошибку. –

ответ

0

Использование параметров по умолчанию, таким образом, даст предупреждение, вы упомянули:

var foo = function(param1, param2 = "some default value"){ 
    console.log(param1 + " " + param2); 
} 

Назначение параметров по умолчанию, как описывалось выше, является особенностью ECMAScript 6 и в настоящее время поддерживается только Mozilla Firefox. Проверьте совместимость браузера здесь: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Functions/default_parameters#Browser_compatibility

Обычно параметры по умолчанию назначаются в javascript следующим образом. Я предлагаю вам следовать тем же, они будут нормально работать во всех браузерах:

var foo = function(param1, param2){ 
    param2 = typeof param2 !== 'undefined' ? param2 : "some default value"; 
    console.log(param1 + " " + param2); 
} 

Проверить эту ссылку для получения более подробной информации: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Functions/default_parameters

Смежные вопросы