如何正确检查Set是否为空

Ant*_*B R 3 javascript dictionary set ecmascript-6

我有一个关于检查Javascript Set是否为空的最佳方法的问题.根据文档,没有一种简单的方法来检查或获取Set项目.

我认为它与Map相同.

我想出了一些想法(Node.js),但我不太清楚什么是更好的.

const assert = require('assert');

const emptySet = new Set()
assert.strictEqual(![...emptySet].length, true)
assert.strictEqual(emptySet.values().next().value === undefined, true)
assert.strictEqual(emptySet.entries().next().value === undefined, true)

const twoItemsSet = new Set([ 'foo', 'bar' ])
assert.strictEqual(![...twoItemsSet].length, false)
assert.strictEqual(twoItemsSet.values().next().value === undefined, false)
assert.strictEqual(twoItemsSet.entries().next().value === undefined, false)
Run Code Online (Sandbox Code Playgroud)

Kyl*_*ker 14

emptySet.size == 0
Run Code Online (Sandbox Code Playgroud)

MDN文档

  • `emptySet.size === 0`怎么样? (8认同)