【问题标题】:What is this syntax and clearly meaning [duplicate]这是什么语法,含义明确[重复]
【发布时间】:2018-01-22 03:10:24
【问题描述】:

我在教程中遇到过这种语法。有人说它不是 ES6 语法。它在一个减少功能中。 我需要一个明确的解释。这些括号里是怎么回事?

{...curr, ...acc}

完整代码..

const endShape = _(raw)
.filter(({key}) =>!/garbage/.test(key))
.map(({key,value})=>({[key]:value}))
.reduce((acc,curr)=>({...curr, ...acc}));
console.log(endShape);

【问题讨论】:

  • 我发现使用 babel 的在线 REPL 之类的东西有助于理解新 JS 语法的一些最有趣的用法 - babeljs.io/repl/…

标签: javascript ecmascript-6


【解决方案1】:

扩展运算符简写 ES6 中引入的扩展运算符有几个用例,可以使 JavaScript 代码更高效、更有趣。它可以用来替换某些数组函数。扩展运算符只是一系列三个点。

速写

const odd = [1, 3, 5];
const nums = [2 ,4 , 6].concat(odd);
// cloning arrays
const arr = [1, 2, 3, 4];
const arr2 = arr.slice();

简写

// joining arrays
const odd = [1, 3, 5 ];
const nums = [2 ,4 , 6, ...odd];
console.log(nums); // [ 2, 4, 6, 1, 3, 5 ]

// cloning arrays
const arr = [1, 2, 3, 4];
const arr2 = [...arr];

【讨论】:

    猜你喜欢
    • 2013-06-18
    • 1970-01-01
    • 2016-04-16
    • 2013-04-12
    • 2022-07-07
    • 2013-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多