Warning: expression closures are deprecated - JavaScript 编辑
The JavaScript warning "expression closures are deprecated" occurs when the non-standard expression closure syntax (shorthand function syntax) is used.
Message
Warning: expression closures are deprecated
Error type
Warning. JavaScript execution won't be halted.
What went wrong?
The non-standard expression closure syntax (shorthand function syntax) is deprecated and shouldn't be used anymore. This syntax will be removed entirely in bug 1083458 and scripts using it will throw a SyntaxError
then.
Examples
Deprecated syntax
Expression closures omit curly braces or return statements from function declarations or from method definitions in objects.
var x = function() 1;
var obj = {
count: function() 1
};
Standard syntax
To convert the non-standard expression closures syntax to standard ECMAScript syntax, you can add curly braces and return statements.
var x = function() { return 1; }
var obj = {
count: function() { return 1; }
};
Standard syntax using arrow functions
Alternatively, you can use arrow functions:
var x = () => 1;
Standard syntax using shorthand method syntax
Expression closures can also be found with getter and setter, like this:
var obj = {
get x() 1,
set x(v) this.v = v
};
With ES2015 method definitions, this can be converted to:
var obj = {
get x() { return 1 },
set x(v) { this.v = v }
};
See also
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论