尝试解构,发现相同的代码适用于 stackoverflow 而不是 Codepen(玩具得到“未定义”):http://codepen.io/tsalexey544/pen/VjWxmm?editors=0010#
这是什么意思?在我的项目中使用解构时我应该担心吗?
let obj = {
species: "Cat",
// toy: "ball",
}
function whatDoTheyDo ({species, toy = "ball"}) {
return `The ${species} playes with a ${toy}`
}
document.write(whatDoTheyDo(obj));
最佳答案
你只需要在 CodePen 中将预处理器设置为 babel
,否则它将使用标准的 ES5,不支持解构。
如果您想使用 ES6/ES7 功能,您必须使用某些工具(例如 Babel)将您的代码“转译”回 ES5。 .一些浏览器已经支持一些 ES6 特性,但完全支持仍然参差不齐。
编辑 - 回答您的问题:是的,您应该担心提供有效的 ES5 代码,因为 ES6 尚未得到完全支持。至少你应该将你的代码提供给 Babel 并发布结果代码,但我强烈建议查看它 Webpack并寻求完整的工具链
关于javascript - ES6 中的解构。我应该担心吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38199182/