问题 JavaScript中是否有Set文字?


我可以 制作一套 new Set()同样,我可以使用Array或Object或Boolean或Number构造函数。

是否有一个集合的文字语法,就像数组,对象,布尔值,数字等?


12146
2018-02-12 17:02


起源



答案:


正如其他人所指出的那样,还没有Set(或Map)文字语法。在这里,有一些想法浮出水面 ES讨论线程 并在 跟随Twitter讨论

一些提议的语法示例:

const set = {<1, "two", false>}; // by Brendan Eich
const set = {. 1, "two", false .}; // by Axel Rauschmayer

尽管如此,据我所知,还没有任何建议可以实施。


8
2018-02-12 17:26



这很好地提到了Twitter的讨论。有助于更好地理解。希望文字尽快加入。我根本不使用“new”关键字。 - mythicalcoder


答案:


正如其他人所指出的那样,还没有Set(或Map)文字语法。在这里,有一些想法浮出水面 ES讨论线程 并在 跟随Twitter讨论

一些提议的语法示例:

const set = {<1, "two", false>}; // by Brendan Eich
const set = {. 1, "two", false .}; // by Axel Rauschmayer

尽管如此,据我所知,还没有任何建议可以实施。


8
2018-02-12 17:26



这很好地提到了Twitter的讨论。有助于更好地理解。希望文字尽快加入。我根本不使用“new”关键字。 - mythicalcoder


好吧,没有文字语法 Set() 但你可以使用数组代替。它们非常相似,可以很容易地在使用功能之间切换:

Array.from(mySet) // Converts mySet into an array
new Set(myArray) // Creates a set from myArray, yes I know

1
2018-02-12 17:09





不,没有单一的语法来声明a Set。有疑问时, 请参考规格


1
2018-02-12 17:04



虽然我不认为你的答案是错误的,但值得注意的是,该部分似乎也没有涵盖数组文字或对象文字,因此不是反驳它的重要来源。 - James Thorpe
@JamesThorpe好点,我刚刚跳到了“文字”部分。我会解决它。 - Mike Cluck