Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
Open more actions menu

Repository files navigation

typedarray.prototype.at Version Badge

github actions coverage License Downloads

npm badge

An ES spec-compliant %TypedArray%.prototype.at shim/polyfill/replacement that works as far down as ES3.

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

Because %TypedArray%.prototype.at depends on a receiver (the “this” value), the main export takes the typed array to operate on as the first argument.

Example

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

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

assert.equal(at(ta, 0), 1);
assert.equal(at(ta, 1), 2);
assert.equal(at(ta, 2), 3);
assert.equal(at(ta, -1), 3);
assert.equal(at(ta, -2), 2);
assert.equal(at(ta, -3), 1);
var shim = require('typedarray.prototype.at/shim');
var getPolyfill = require('typedarray.prototype.at/polyfill');
var assert = require('assert');
/* when TypedArray#at is not present */
delete Object.getPrototypeOf(Uint8Array.prototype).at;
var shimmed = shim();
assert.equal(shimmed, getPolyfill());
assert.equal(shimmed, Uint8Array.prototype.at);

var ta = new Uint8Array([1, 2, 3]);
assert.equal(ta.at(-1), at(ta, -1));
var shim = require('typedarray.prototype.at/shim');
var assert = require('assert');
/* when TypedArray#at is present */
var shimmed = shim();
assert.equal(shimmed, Uint8Array.prototype.at);

var ta = new Uint8Array([1, 2, 3]);
assert.equal(ta.at(-1), at(ta, -1));

Tests

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

About

An ES5 spec-compliant `TypedArray.prototype.at` shim/polyfill/replacement that works as far down as ES3

Resources

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

Sponsor this project

Used by

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.