gpt4 book ai didi

javascript - 结构体和字典有什么区别?

转载 作者:行者123 更新时间:2023-11-27 23:04:21 25 4
gpt4 key购买 nike

这两个术语在本文 documentation 中被大量使用。 。 struct 的概念很容易理解,即属性是固定的对象,但我们有 dict ,它可以有任意数量的属性,那么它与普通的 有何不同>对象?为什么需要一个单独的类型来实现此功能?

最佳答案

我认为关键的区别在于 documentation page

By using @struct, you know that the compiler will rename all properties safely, because you can't use bracket access. By using @dict, you know that the properties will have the same name after compilation.

(了解闭包编译器的一个关键点是 properties accessed with bracket notation are not renamed )。

使用闭包编译器会以您指定的方式限制您对 JavaScript 的使用。当您编写的代码违反了使用 @struct@dict 等注释设置的限制时,您是在告诉编译器向您发出警告。

正如您所说,@dict确实“像一个普通的对象”。通过使用@dict,您告诉编译器您将向对象添加属性,并且您不希望将这些属性重命名为最小名称。

相反,@struct 通常用于您不关心编译器将属性重命名为什么的类。您也不希望向这样的对象添加属性,因此如果您这样做,它应该是一个错误。

顺便说一句,这个例子 page about struct and dict我认为有点难以理解,所以如果您仍然对该页面上的任何内容感到困惑,请随时询问更多信息。

关于javascript - 结构体和字典有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36732595/

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