简体   繁体   English

有错误:SyntaxError:意外的令牌,预期的“,” - 我试图返回一个数组,其中键名称:和时间戳:存在

[英]Have Error : SyntaxError: Unexpected token, expected “,” - I am trying to return an array where the keys name: and timestamp: are present

Have Error: SyntaxError: Unexpected token, expected "," - I am trying to return an array where the keys name: and timestamp: are present.有错误:SyntaxError: Unexpected token, expected "," - 我试图返回一个数组,其中键名:和时间戳:存在。 by pushing into new array where keys are valid i used, but this gives me back and array where elements are undefined.通过推入我使用的键有效的新数组,但这给了我返回元素未定义的数组。 trying to make new array where these dont exist in new array尝试制作新数组中不存在的新数组


     const newEvents = events.map(event => (event.name && event.timestamp) && {
        timestamp: event.timestamp,
        name: event.name,
      });

//Trying to push into array here when the the keys name: and timestamp: are present. //当键名:和时间戳:存在时,尝试在此处推入数组。 //But, getting a Unexpected error "," //但是,得到一个意外错误“,”


      const newerEvents =[];
      for (const ele of events){
        (ele.name && ele.timestamp) && { newerEvents.push({name: ele.name, timestamp: 
        ele.timestamp}) }
      }

Any help is greatly appreciated, thanks非常感谢任何帮助,谢谢

The curly braces here are being treated as an object literal instead of a "short-circuit" code block:这里的花括号被视为object 文字而不是“短路”代码块:

(ele.name && ele.timestamp) && { /* this is an object, not a code block */ }

You can fix this by either:您可以通过以下任一方式解决此问题:

  1. Omitting the curly braces {} :省略花括号{}

     (ele.name && ele.timestamp) && newerEvents.push({name: ele.name, timestamp: ele.timestamp})
  2. an if (for when you need multiple statements): if (当您需要多个语句时):

     //populate const events = [{timestamp: new Date().getTime(), name: "hi"}]; const newEvents = events.map(event => (event.name && event.timestamp) && { timestamp: event.timestamp, name: event.name, }); const newerEvents = []; for (const ele of events) { if (ele.name && ele.timestamp) { newerEvents.push({name: ele.name, timestamp: ele.timestamp}); } } //output console.log(newerEvents);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 我正在尝试发出 AJAX 获取请求,但我不断收到错误“Uncaught SyntaxError: Unexpected token ')'” - I am trying to make an AJAX fetch request and I keep getting an error "Uncaught SyntaxError: Unexpected token ')'" Webpack:SyntaxError:尝试访问JSON数组时出现意外的令牌错误 - Webpack: SyntaxError: Unexpected token error when trying to access JSON array 我在Safari 5.1.7中收到错误“ SyntaxError:预期令牌')'” - I am getting error “SyntaxError: Expected token ')' ” in Safari 5.1.7 SyntaxError 意外标记,应为“,” - SyntaxError Unexpected token, expected “,” 语法错误:意外的标记,应为“,” - SyntaxError:Unexpected token, expected "," SyntaxError:意外的令牌返回 - SyntaxError: Unexpected token return 我刚开始在代码学院学习。 我收到错误“ SyntaxError:意外令牌” - I am just starting in code academy. I am getting the error “SyntaxError: Unexpected token” 尝试访问javascript对象值时出现“ SyntaxError:意外令牌,应为” - “SyntaxError: Unexpected token, expected , ” when trying to access javascript object value 当我尝试从json获取html时,出现了未捕获的SyntaxError:意外的令牌) - Uncaught SyntaxError: Unexpected token ) when i am trying to get html from json JSON“ SyntaxError:意外令牌'&'。 应该是一个属性名称。” - JSON “SyntaxError: Unexpected token '&'. Expected a property name.”
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM