object literal - 必须明确给出不同的键

时间:2016-11-26 10:52:31

标签: javascript

Helllo,我正在http://es6katas.org/慢慢完成ES6代码。

我坚持使用这段代码:

const func = () => func;

it('a different key must be given explicitly, just like before ES6', () => {
  const short = {func};
  assert.deepEqual(short, {otherKey: func});
});

如何使用显式密钥让我的测试通过?我不允许更改断言,只允许更改其他代码。

2 个答案:

答案 0 :(得分:1)

本练习的目的是证明如果你想使用一个与保存该值的变量名称不匹配的键,你需要明确地给出键,就像你在ES6之前一样。

这是一项非常简单的练习,变量名称short使得生成的代码看起来有点奇怪,但它只是简单:

it('a different key must be given explicitly, just like before ES6', () => {
  const short = {otherKey: func};
  assert.deepEqual(short, {otherKey: func});
});

答案 1 :(得分:0)

如果我们必须保持断言不变,那么你需要更新代码,以便"其他密钥"给定匹配short中使用的变量的名称。

例如:

const func = () => func;

it('a different key must be given explicitly, just like before ES6', () => {
  const otherKey = func;
  const short = {otherKey};
  assert.deepEqual(short, {otherKey: func});
});