JavaScriptFloat64Array

原创
admin 4个月前 (08-19) 阅读数 62 #JavaScript

Float64Array

Float64Array 是一种类型数组,用于表示平台字节顺序为 64 位的浮点数型数组,这对应于 C 语言中的浮点数据类型。如果你需要控制字节顺序,可以使用 DataView 来替代。创建 Float64Array 时,其内容会自动初始化为 0。一旦建立,你可以使用对象的方法对其元素进行操作,或者使用标准数组索引语法(使用方括号)。

语法

new Float64Array(length);
new Float64Array(typedArray);
new Float64Array(object);
new Float64Array(buffer [, byteOffset [, length]]);

更多语法信息和参数,请参考 TypedArray。

静态属性

  • Float64Array.BYTES_PER_ELEMENT

  • 返回元素字节数。在 Float64Array 的情况下返回 8。

  • Float64Array.length

  • 长度属性的值为 3。关于其实际长度(元素数量)参见 Float64Array.prototype.length。

  • Float64Array.prototype

  • TypedArray 对象的原型。

静态方法

  • Float64Array.from()

  • 从一个类数组对象或可遍历对象创建一个新的 Float64Array。参考 Array.from()。

  • Float64Array.of()

  • 用可变数量的参数创建一个新的 Float64Array。参考 Array.of()。

实例属性

还从其父接口 TypedArray 继承实例属性。

  • Float64Array.prototype.constructor

  • 返回创建这个实例原型的函数。这是 Float64Array 默认的构造函数。

  • Float64Array.prototype.buffer

  • 返回这个 Float64Array 引用的 ArrayBuffer。构造时已固定,所以是只读的。

  • Float64Array.prototype.byteLength

  • 返回从 Float64Array 的 ArrayBuffer 开头开始的长度(以字节为单位)。构造时已固定,所以是只读的。

  • Float64Array.prototype.byteOffset

  • 返回从 Float64Array 的 ArrayBuffer 开头开始的偏移量(以字节为单位)。构造时已固定,所以是只读的。

  • Float64Array.prototype.length

  • 返回 Float64Array 中的元素个数。构造时已固定,所以是只读的。

实例方法

从其父接口 TypedArray 继承实例方法。

示例

// 从长度创建
var float64 = new Float64Array(2);
float64[0] = 42;
console.log(float64[0]); // 42
console.log(float64.length); // 2
console.log(float64.BYTES_PER_ELEMENT); // 8

// 从数组创建
var arr = new Float64Array([21, 31]);
console.log(arr[1]); // 31

// 从另一个 TypedArray 创建
var x = new Float64Array([21, 31]);
var y = new Float64Array(x);
console.log(y[0]); // 21

// 从 ArrayBuffer 创建
var buffer = new ArrayBuffer(32);
var z = new Float64Array(buffer, 0, 4);

规范

Float64Array 遵循 ECMAScript 2026 Language Specification 中的 TypedArray 对象规范。

浏览器兼容性

Float64Array 在所有现代浏览器中都有良好的支持,包括 Chrome、Firefox、Safari 和 Edge。自 2015 年 7 月起,它已在所有主流浏览器中可用。

一致性提示

从 ECMAScript 2015 (ES6) 开始,Float64Array 构造函数需要使用 new 操作符来构造。如果不使用 new 直接调用构造函数,会抛出 TypeError。

// 错误用法
var dv = Float64Array([1, 2, 3]);
// TypeError: calling a builtin Float64Array constructor
// 不允许不使用 new

// 正确用法
var dv = new Float64Array([1, 2, 3]);

参见

  • JavaScript typed arrays

  • ArrayBuffer

  • DataView

版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权本站发表,未经许可,不得转载。

作者文章
热门
最新文章
标签列表