为啥 jslint 在模板字符串上抱怨 Unexpected '`'
Posted
技术标签:
【中文标题】为啥 jslint 在模板字符串上抱怨 Unexpected \'`\'【英文标题】:Why does jslint complain Unexpected '`' on template strings为什么 jslint 在模板字符串上抱怨 Unexpected '`' 【发布时间】:2021-06-11 14:58:57 【问题描述】:我在 Vim 中使用 JSLint 和 syntastic,当我有一个简单的 .js
文件时
var a = 99;
var b = `I am $a years old`;
为什么 Syntastic(以及 jslint)会给我这个错误
Unexpected '`'
【问题讨论】:
因为您没有 Syntastic 配置的属性来识别有效(现代)语法。 因为json数据不应该有'`'字符 JSON 还是 javascript? eslint.org/docs/rules/quotes @Phix 修复了它(它是 js) 【参考方案1】:好的,我想你在问一个棘手的问题。使用最新版本的 JSLint,您的代码 lints 正常。
在jslint.com 上试用。
以前是JSLint didn't support es6 (ES2015) features out of the box,你必须明确告诉它你使用的是 es6。
直到 ES2015(又名 es6),leaves out many browsers 才出现模板文字 (`)。旧的 JSLint 副本假定您将 JavaScript 写入可能仅符合 es5 的浏览器,除非您告诉它您处于 ES2015 (es6) 模式。
所以尝试将/*jslint es6 */
放在文件顶部,看看它是否会掉毛。
但更重要的是:更新您的 JSLint 版本。
【讨论】:
以上是关于为啥 jslint 在模板字符串上抱怨 Unexpected '`'的主要内容,如果未能解决你的问题,请参考以下文章