JavaScript ArrayBuffer
在本文中,我们将了解 JavaScript 中的 ArrayBuffer
对象以创建和操作 ArrayBuffer
对象。
语法:
var buffer = new ArrayBuffer(size);
ArrayBuffer
中的 size 参数指定创建的缓冲区的大小(以字节为单位)。
在 JavaScript 中创建一个 ArrayBuffer
var buffer = new ArrayBuffer(8);
var view = new DataView(buffer);
在上面的代码中,我们创建了一个 8 字节的缓冲区。此外,我们使用 DataView
视图来引用和操作缓冲区。
让我们看一些例子来清楚地了解 ArrayBuffer
对象。
示例 1:
<!DOCTYPE html>
<html >
<head>
<title>JavaScript ArrayBuffer</title>
</head>
<body>
<h1 style="color: blueviolet;"> DelftStack </h1>
<h3><u>JavaScript ArrayBuffer object</u></h3>
<script>
var buffer = new ArrayBuffer(8); // create a buffer of length 8
var view = new DataView(buffer); // view which is reffering to buffer
document.write("Buffer Byte Length : " + buffer.byteLength);
document.write("<br>");
document.write("View Byte Length : " + view.byteLength);
</script>
</body>
</html>
输出:
DelftStack
JavaScript ArrayBuffer object
Buffer Byte Length : 8
View Byte Length : 8
下面是我们如何使用 DataView
和类型化数组修改和执行 ArrayBuffer
对象的另一个示例。
示例 2:
<!DOCTYPE html>
<html >
<head>
<title>JavaScript ArrayBuffer</title>
</head>
<body>
<h1 style="color: blueviolet;"> DelftStack </h1>
<p> <b> <u> Manipulating ArrayBuffer using DataView and TypedArray </b> </u> </p>
<script>
// ArrayBuffer
var buffer = new ArrayBuffer(8);
// DataView
var view1 = new DataView(buffer);
// TypedArray
var view2 = new Int8Array(buffer);
//Put value of 32bits
view1.setInt32(0, 0x76543210);
//prints the 32bit value
document.write( "32 bit value : " + view1.getInt32(0).toString(16) + "<br>");
//prints only 8bit value
document.write("8 bit value : " + view1.getInt8(0).toString(16) + "<br>");
document.write("32 bit value : " + view2[0].toString(16));
</script>
</body>
</html>
输出:
DelftStack
Manipulating ArrayBuffer using DataView and TypedArray
32-bit value : 76543210
8-bit value : 76
32-bit value : 76
因此,如上例所示,我们可以将多个 DataView
或 TypedArray 对象添加到单个 ArrayBuffer
并查看其他对象视图对一个对象的任何更改。
相关文章
Do you understand JavaScript closures?
发布时间:2025/02/21 浏览次数:108 分类:JavaScript
-
The function of a closure can be inferred from its name, suggesting that it is related to the concept of scope. A closure itself is a core concept in JavaScript, and being a core concept, it is naturally also a difficult one.
Do you know about the hidden traps in variables in JavaScript?
发布时间:2025/02/21 浏览次数:178 分类:JavaScript
-
Whether you're just starting to learn JavaScript or have been using it for a long time, I believe you'll encounter some traps related to JavaScript variable scope. The goal is to identify these traps before you fall into them, in order to av
How much do you know about the Prototype Chain?
发布时间:2025/02/21 浏览次数:150 分类:JavaScript
-
The prototype chain can be considered one of the core features of JavaScript, and certainly one of its more challenging aspects. If you've learned other object-oriented programming languages, you may find it somewhat confusing when you start
用 jQuery 检查复选框是否被选中
发布时间:2024/03/24 浏览次数:102 分类:JavaScript
-
在本教程中学习 jQuery 检查复选框是否被选中的所有很酷的方法。我们展示了使用直接 DOM 操作、提取 JavaScript 属性的 jQuery 方法以及使用 jQuery 选择器的不同方法。你还将找到许多有用的
jQuery 中的 Window.onload 与 $(document).ready
发布时间:2024/03/24 浏览次数:180 分类:JavaScript
-
本教程演示了如何在 jQuery 中使用 Window.onload 和 $(document).ready 事件。