首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用带有Express.js / 'delete‘(保留字)的JSHint

使用带有Express.js / 'delete‘(保留字)的JSHint
EN

Stack Overflow用户
提问于 2012-07-11 03:24:53
回答 3查看 5.4K关注 0票数 9

我在Node.js之上使用Express.js来创建grunt,并使用grunt来查看我的文件并自动设置我的JavaScript。

每次我使用delete函数时,它都会被JSHint标记:

代码语言:javascript
运行
复制
[L218:C9] Expected an identifier and instead saw 'delete' (a reserved word).
app.delete('/api/users/:userid', function deleteUser(req, res, next) {

我知道'delete‘是一个保留字,但它是由Express.js选择的!有没有更好的方法来修改我的Express.js应用呢?有没有办法关掉这张支票??

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-07-11 03:28:11

在Express.js中,使用del而不是delete

代码语言:javascript
运行
复制
app.del('/api/users/:userid', function deleteUser(req, res, next)
票数 28
EN

Stack Overflow用户

发布于 2013-06-03 12:52:27

解决这个问题的另一种方法是使用bracket notation而不是dot notation

代码语言:javascript
运行
复制
app['delete']('/api/users/:userid', function deleteUser(req, res, next) {
  /* function body */
});

在过去使用定义了.delete.continue方法的IndexedDB时,这种工作是必要的。

如今,这种变通方法不再是必要的。Ever since ES5 JavaScript允许属性名称使用保留字。很长一段时间以来,jsHint默认假设您的代码是ES3,但是starting with version 2.0.0它默认假设它是ES5,并且不会抱怨保留字被用作属性名称。

票数 7
EN

Stack Overflow用户

发布于 2013-03-04 14:53:37

在jshint 1.1.x中,您可以为JSHint设置es5选项,并且它将允许您根据ES5规范使用保留字作为属性。

从JSHint 2.0开始,es5选项是默认选项,应该允许您使用保留字作为属性。

有关更多信息,请访问http://www.jshint.com/docs/#options

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11420440

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档