javascript - Khanacademy Javascript Canvas 默认参数错误

标签 javascript ecmascript-6 default-parameters khan-academy

我正在 khanacademy.org javascript/ProcessingJS Canvas 上开发一个很酷的程序,并且我想使用默认参数。但是,它显示了这个错误框:

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

这是什么以及如何修复它?

最佳答案

以这种方式使用默认参数将给出您提到的警告:

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

关于javascript - Khanacademy Javascript Canvas 默认参数错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31397326/

相关文章:

javascript - React - 加载页面一次调用所有 onClicks,然后单击按钮不执行任何操作

javascript - JS : Find object by field in a complex Parent-Child Array

javascript - 如何用 ES6 类模拟私有(private)作用域?

javascript - 关于在 JavaScript 中定义全局变量

javascript - 如何忽略lodash orderBy中的新行

javascript - 动态生成的 HTML 中没有 "tab to move to next input element"?

javascript - 如何在html中创建动态页面?

c++ - 如何将值传递给它的参数(默认参数)

javascript - 在 ES6 中使用默认值和扩展语法

swift - 在具有多个唯一类型默认参数的 swift 函数的情况下,为什么类型推断不能解决问题?