问题标签 [ecmascript-2018]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
39 浏览

javascript - 在声明 es2018 期间内联扩展运算符

我想做这样的事情:

显然它不起作用,当然,我可以设置另一个 const,然后使用它,但我很懒)所以我很好奇 javascript 是否允许你这样做?

0 投票
1 回答
277 浏览

javascript - Javascript中的异步迭代器

我正在寻找在 Javascript 中制作异步迭代器的最佳方法。我已经在使用生成器和 async/await 函数,但是如果不使用最新的 Node.js 版本 (10.x),我找不到实现所谓的 for-await-of 循​​环的方法。

问题如下:

我正在从 API 获取大量数据,我需要滚动它的内容。我不想将所有内容存储在一个数组中,因为它会在 RAM 中爆炸。

我知道如何使用流来做到这一点,但使用生成器来做到这一点会更酷(在我看来)。

谢谢你的帮助,

最好的祝福,

-- 科伦丁

0 投票
2 回答
137 浏览

javascript - 拆分JS字符串正则表达式大写后跟小写

我有一个很长的 javascript 变量文章,我正在尝试拆分其中一个小写字符紧跟一个大写字母

使用正则表达式我尝试过:

但只设法分裂每个字

0 投票
0 回答
59 浏览

javascript - 异步迭代器使用的真实示例

我想知道异步迭代器的一些可能的现实世界使用示例,这是 ECMAScript 2018 的一部分。

对于可读流,它看起来很有用,因为我们可以使用 new 轻松迭代它们for await of。实际上,在 Node.js 中,可读流已经有一个Symbol.asyncIterator作为实验特性实现的属性:

但是我想不出其他一些好的用法。

至于同步迭代器,我们有像 Array 或 Map 这样的原生对象,它们包含Symbol.iterator自 ES2015 以来的属性,使它们可迭代。在这种情况下,我认为它们的用途非常广泛且易于理解。

任何想法表示赞赏。

0 投票
2 回答
10331 浏览

javascript - ES6传播运算符到香草Javascript

我在从 url 获取参数的项目中添加了一个使用 ES6 扩展运算符的脚本。在我发现该项目不支持 ES6 后,不确定如何将其恢复为普通的 Javascript 语法。

使用普通的 Javascript 数组并使用扩展运算符很​​容易,但在像这样的更复杂的情况下,我无法在不完全更改脚本的情况下使数组返回结果。

感谢大家的回复。来回之后,我意识到我将整个脚本转换为 ES5 的建议是正确的,因为浏览器只抱怨该行但其他项目不是 ES5 也有问题。

这是我使用 ES5 后的结果:

0 投票
2 回答
210 浏览

javascript - “等待”异步迭代中的“睡眠”执行(ES2018)

我正在使用异步迭代从 DynamoDB 获取项目。对于每次迭代(项目),我都会执行一些 http 请求。为了限制请求流,我需要在每次迭代中“休眠”1 秒。我尝试使用 promisify(setTimeout) 但执行停止。

在“等待”交互中“睡觉”的正确方法是什么?

0 投票
0 回答
69 浏览

javascript - 在 Shadow DOM 中放置样式时的内存消耗

在Shadow DOM中放置 CSS 样式时,我没有找到任何有关内存消耗的信息。

如果我在一个页面上有一千个特定Web 组件的实例(每个都有通过影子根的样式);嵌入式样式占用的内存是通过外部样式表执行相同样式的 999 倍吗?

0 投票
1 回答
184 浏览

javascript - 自定义元素 - 扩展 HTMLElement 的命名冲突

自定义元素是通过扩展 HTMLElement 类创建的。

因此,当您创建一个时,您似乎必须采取特殊的预防措施,不要为您的自定义元素提供任何已经从 HTMLElement 继承的自定义属性名称。

我可以想象多种避免这些潜在命名冲突的方法,但会对其他人的建议或有关该主题的任何最佳实践感兴趣。

0 投票
3 回答
13743 浏览

javascript - JavaScript - 传播和休息语法从对象中删除特定属性

我有一个对象如下:

我想通过调用将要删除的属性名称作为参数的方法来删除特定属性

问题是这个方法只有在我们直接在语法中写属性名时才有效,比如let { bar, _, ...result } = obj

我们怎么能做到这一点,如果可能的话,除了omitlodash之外的另一种解决方案

0 投票
1 回答
144 浏览

javascript - 数组参数在标签函数中不可扩展

通常,javascript 中的数组是可扩展的,但对于作为标记函数的第一个参数传递的数组而言,情况并非如此:

确切地说,在规范中,这个数组被认为是不可扩展的?我什至不确定我是否正在寻找正确的位置