gpt4 book ai didi

javascript - 为什么在有效的 JavaScript 函数中定义分块对象(因为缺少更好的术语)?

转载 作者:行者123 更新时间:2023-11-29 18:43:10 24 4
gpt4 key购买 nike

我最近读了this article关于单元测试 React。

作者在其中使用了这样的语法:

describe('ClickCounter component', async assert => {
const createCounter = clickCount =>
render(<ClickCounter clicks={ clickCount } />)
;
{
const count = 3;
const $ = createCounter(count);
assert({
given: 'a click count',
should: 'render the correct number of clicks.',
actual: parseInt($('.clicks-count').html().trim(), 10),
expected: count
});
}
{
const count = 5;
const $ = createCounter(count);
assert({
given: 'a click count',
should: 'render the correct number of clicks.',
actual: parseInt($('.clicks-count').html().trim(), 10),
expected: count
});
}
});

我感到困惑的部分是将 assert 作为参数的回调函数的内容。

在其中,他只是将一个对象一个接一个地链接起来。他基本上是这样做的:

const myFunc = () => {
{
// object that confuses me, with promise (`assert`) which resolves
}
{
// another object
}
}

并且以某种方式执行了这些对象中的代码。在我观看的任何有关 JavaScript 的类(class)或阅读的书籍中,我从未见过这样的代码。我也从未体验过在任何其他库或框架中使用过这种语法。但是,我对其进行了测试并且代码有效,测试全部运行。

注意他也从不返回任何东西。即使他使用了关键字 async,他也没有 await 任何东西。

为什么这些分块对象是有效的 JavaScript?它是如何工作的?对此有明确的命名法吗?我查看了 MDN(和 Google)但没有找到任何东西。

最佳答案

您所看到的称为复合语句

MDN

关于javascript - 为什么在有效的 JavaScript 函数中定义分块对象(因为缺少更好的术语)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55645678/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com