array-envelop

1.0.2 • Public • Published

array-envelop npm version

This wraps an array-like object to an array so that every array method can be utilized. Try yourself via RunKit.

import { envelop } from "array-envelop";
 
const object = {
  0: "maya",
  1: "eve",
  length: 2
};
 
const enveloped = envelop(object);
enveloped.indexOf("eve"); // returns 1
 
/*
 * Anything that mutates the array will throw, including the followings:
 *
 * enveloped.length = "peanut";
 * enveloped.push("peanut");
 * enveloped.pop();
 * enveloped.shift();
 */

Why not Array.from?

Array.from copies everything while array-envelop keeps refering to the original object.

object[2] = "aya";
object.length = 3;
 
enveloped.join(" "); // "maya eve aya"
const liveNodeList = document.getElementsByTagtName("div");
 
envelop(liveNodeList); // a live array that changes as the document structure does

Readme

Keywords

Package Sidebar

Install

npm i array-envelop

Weekly Downloads

2

Version

1.0.2

License

ISC

Unpacked Size

3.72 kB

Total Files

6

Last publish

Collaborators

  • saschanaz