【问题标题】:Syntax error on token "in", Identifier expected标记“in”的语法错误,需要标识符
【发布时间】:2016-02-25 13:26:00
【问题描述】:

enter image description here

我突然在 javascript 文件中遇到语法错误 Eclipse 火星 IDE 错误 : 标记“in”的语法错误,需要标识符

代码:

function getData (node) {
    var attrs = node.attributes || []
      , data = {};

    if (!attrs.length) return data;

    $.each(attrs, function (i, attr) {
      if (/^data-in-*/.test(attr.nodeName)) {
        data.in = data.in || {};
        data.in[attr.nodeName.replace(/data-in-/, '')] = attr.nodeValue;
      } else if (/^data-out-*/.test(attr.nodeName)) {
        data.out = data.out || {};
        data.out[attr.nodeName.replace(/data-out-/, '')] = attr.nodeValue;
      } else if (/^data-*/.test(attr.nodeName)) {
        data[attr.nodeName] = attr.nodeValue;
      }
    })

    return data;
  }

【问题讨论】:

  • in 是 javascript 中的关键字,不能用作属性,所以 data.in = data.in || {}; 无效
  • 我不认为这是一个实际的错误,代码是有效的。 IDE 中的 linter 似乎过于敏感。你在浏览器中运行的时候也会报错吗?
  • @nathan.meadows 自从 ES5 以来,MDN: Reserved word usage 不再是这种情况。一些较旧的浏览器或编辑器会抱怨它是语法错误。

标签: javascript jquery


【解决方案1】:

看起来你 eclipse 编辑器验证 java 的 javascript 语句。只要它在浏览器中工作你不必担心编辑器错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 1970-01-01
    相关资源
    最近更新 更多