首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Javascript类型的数组是否初始化为0?

Javascript类型的数组是否初始化为0?
EN

Stack Overflow用户
提问于 2012-08-18 01:12:02
回答 2查看 1.4K关注 0票数 6

我需要一个类型数组,特别是一个全零的Float32Array。我想我必须手动清除它,但我注意到当我声明它时,它已经被清零了。这是规范中指定的内容吗?我可以依赖这个行为吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-08-18 01:47:37

根据JavaScript's Typed Array Specification, contents are initialized to 0的说法。因此,您应该能够依赖于此行为。

请注意,类型化数组don't have very good cross browser support yet。Chrome、Safari、Firefox和Opera都支持它,但Internet Explorer只在IE10中引入了支持。

我还应该提到,与普通数组相比,类型化数组目前是extremely slow in Safari的。因此,您最好避免使用类型化数组,除非您的目标不是Safari。使用普通数组,所有数组值都初始化为undefined

票数 6
EN

Stack Overflow用户

发布于 2012-08-18 01:15:06

默认情况下,如果使用大小构造数组,则数组包含null。由于null == 0,您可能会认为它填充了0或其他任何错误的值。但是,如果您尝试调用numbers上的方法,比如.toString,就会遇到问题。或者,如果您通过一个需要数字形式的函数来运行它,比如parseInt

理想情况下,您应该始终初始化一个数组,以便确切地知道它包含什么,尽管我个人从未听说过JS中的类型化数组……

票数 -4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12010151

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档