类型化数组通常在与外部世界交互时使用,其中数据以特定的非 javascript 形式出现,并且您希望通过 javascript 访问该数据。类型数组用于创建数据缓冲区的特定视图。缓冲区是原始数据,视图是读取/解释/访问该数据的方法。
如果您不与外部世界交互并且不尝试处理在 javascript 之外创建的数据或发送到 javascript 之外的代理,那么通常只使用普通的 javascript 数组而不使用缓冲区和类型化数组。
这就是您询问的类型:
Int16Array: An array of 16-bit integers (signed) - 2 bytes per entry
Uint8Array: An array of 8-bit unsigned integers - 1 byte per entry
Uint32Array: An array of 32-bit unsigned integers - 4 bytes per entry
您可以在此处查看所有类型化数组的列表:https ://developer.mozilla.org/en-US/docs/Web/JavaScript/Typed_arrays
当变量是typed
时,这意味着该变量具有非常特定的类型并且只有该类型。类型可能是字符串、16 位有符号整数、浮点数等……在 javascript 中,变量可以保存任何类型的数据,因此它没有具体类型。在其他语言(例如 C)中,变量通常预先声明为具有特定类型,并且(不使用特定覆盖)您不能将不同类型的数据分配给该变量。
不打算就各种语言特性的可取性展开争论,通常认为用类型化语言编程更安全,并且执行引擎可能可以更快地操作数据,但无类型或弱类型语言有时可以更灵活——使其做一些事情更简单或更干净。