xiaofu-ruoyi-vue/node_modules/typedarray.prototype.slice
ffr b5131258d8 第一次提交 2024-04-23 08:05:40 +08:00
..
test 第一次提交 2024-04-23 08:05:40 +08:00
.editorconfig 第一次提交 2024-04-22 22:43:17 +08:00
.eslintrc 第一次提交 2024-04-22 22:43:17 +08:00
.nycrc 第一次提交 2024-04-23 08:05:40 +08:00
CHANGELOG.md 第一次提交 2024-04-23 08:05:40 +08:00
LICENSE 第一次提交 2024-04-22 22:43:17 +08:00
README.md 第一次提交 2024-04-23 08:05:40 +08:00
auto.js 第一次提交 2024-04-23 08:05:40 +08:00
implementation.js 第一次提交 2024-04-23 08:05:40 +08:00
index.js 第一次提交 2024-04-23 08:05:40 +08:00
package.json 第一次提交 2024-04-23 08:05:40 +08:00
polyfill.js 第一次提交 2024-04-23 08:05:40 +08:00
shim.js 第一次提交 2024-04-23 08:05:40 +08:00

README.md

TypedArray.prototype.slice Version Badge

github actions coverage License Downloads

npm badge

An ES spec-compliant TypedArray.prototype.slice shim. Invoke its "shim" method to shim TypedArray.prototype.slice if it is unavailable.

This package implements the es-shim API interface. It works in an ES5-supported environment and complies with the spec.

Most common usage:

var assert = require('assert');
var slice = require('typedarray.prototype.slice');

var arr = new Uint8Array([1, 2, 3]);

var arr2 = slice(arr);

arr2[0] = 2;
arr2[1] = 3;

assert.deepEqual(arr, new Uint8Array([1, 2, 3]));
assert.deepEqual(arr2, new Uint8Array([2, 3, 3]));
assert.notEqual(arr.buffer, arr2.buffer);

if (!Uint8Array.prototype.slice) {
	slice.shim();
}

var arr3 = arr.slice();
arr3[0] = 2;
arr3[1] = 3;

assert.deepEqual(arr, new Uint8Array([1, 2, 3]));
assert.deepEqual(arr3, new Uint8Array([2, 3, 3]));
assert.notEqual(arr.buffer, arr3.buffer);

Engines where this is needed

- node v0.11.4 - v4: no prototype or own `slice` method
- node < v0.11.3: own `slice` method that fails to clone the underlying buffer

Tests

Simply clone the repo, npm install, and run npm test