1.0.1 • Published 10 years ago

sliced v1.0.1

Weekly downloads
1,531,257
License
MIT
Repository
github
Last release
10 years ago

#sliced

A faster alternative to [].slice.call(arguments).

Build Status

Example output from benchmark.js

Array.prototype.slice.call x 1,401,820 ops/sec ±2.16% (90 runs sampled)
[].slice.call x 1,313,116 ops/sec ±2.04% (96 runs sampled)
cached slice.call x 10,297,910 ops/sec ±1.81% (96 runs sampled)
sliced x 19,906,019 ops/sec ±1.23% (89 runs sampled)
fastest is sliced

Array.prototype.slice.call(arguments, 1) x 1,373,238 ops/sec ±1.84% (95 runs sampled)
[].slice.call(arguments, 1) x 1,395,336 ops/sec ±1.36% (93 runs sampled)
cached slice.call(arguments, 1) x 9,926,018 ops/sec ±1.67% (92 runs sampled)
sliced(arguments, 1) x 20,747,990 ops/sec ±1.16% (93 runs sampled)
fastest is sliced(arguments, 1)

Array.prototype.slice.call(arguments, -1) x 1,319,908 ops/sec ±2.12% (91 runs sampled)
[].slice.call(arguments, -1) x 1,336,170 ops/sec ±1.33% (97 runs sampled)
cached slice.call(arguments, -1) x 10,078,718 ops/sec ±1.21% (98 runs sampled)
sliced(arguments, -1) x 20,471,474 ops/sec ±1.81% (92 runs sampled)
fastest is sliced(arguments, -1)

Array.prototype.slice.call(arguments, -2, -10) x 1,369,246 ops/sec ±1.68% (97 runs sampled)
[].slice.call(arguments, -2, -10) x 1,387,935 ops/sec ±1.70% (95 runs sampled)
cached slice.call(arguments, -2, -10) x 9,593,428 ops/sec ±1.23% (97 runs sampled)
sliced(arguments, -2, -10) x 23,178,931 ops/sec ±1.70% (92 runs sampled)
fastest is sliced(arguments, -2, -10)

Array.prototype.slice.call(arguments, -2, -1) x 1,441,300 ops/sec ±1.26% (98 runs sampled)
[].slice.call(arguments, -2, -1) x 1,410,326 ops/sec ±1.96% (93 runs sampled)
cached slice.call(arguments, -2, -1) x 9,854,419 ops/sec ±1.02% (97 runs sampled)
sliced(arguments, -2, -1) x 22,550,801 ops/sec ±1.86% (91 runs sampled)
fastest is sliced(arguments, -2, -1)

Benchmark source.

##Usage

sliced accepts the same arguments as Array#slice so you can easily swap it out.

function zing () {
  var slow = [].slice.call(arguments, 1, 8);
  var args = slice(arguments, 1, 8);

  var slow = Array.prototype.slice.call(arguments);
  var args = slice(arguments);
  // etc
}

install

npm install sliced

LICENSE

easycommands-beta@r6sbot/mongoose@signalchain/mongoosemongoose-w@infinitebrahmanuniverse/nolb-slic@fivem-rp/mquery@everything-registry/sub-chunk-2779tap-console-parsertapan-mongooset-ndarraysvg-injecttest-js-accounttest-js-contractwr-mongoose-fivewrappedwww-bundlex-ray-crawlerx-ray-crawler-upgradedxhr-formsunspreadsheetdbsutrathot-genvoavovalidate-argumentsvidogenerator-bootstrap-boilerplate-templatejson-futurejsreport-sql-2js-templatesjoi-router-safekabukikoa-joi-multi-validates-routerkoa-joi-routerkoa-joi-router-altkoa-joi-router-fixkoa-joi-router-ngkoa-joi-router-supportkoa-router-joilaunchykevin-mongooseglint-adapterstylesheet-colorsstreamsoftco-productionsql-bulkinsertsqlsql-replace-forksql-tsstep.jsstellarsort-domtwittersearchstreamtransform-stacktraceviewtracestacktipptools_may_24@atul898/node-sql@ark7/mongoose@christian-slater/theme@bokuweb/nightmare-custom-for-karma@dfrankland/nightmareyarbyoshuawuyts.github.iowaveareawaterfallizevirtualizevirtual-elementunichan-mergetry-againzn-ms-common@dta5/koa-joi-router@edenjs/mquery@ecubelabs/koa-joi-router@finviet-jsrpt/jsrpt-sql-2@frdl/legacy-and-deprecations-fallback@gitterhq/mongoose@kostkams/nightmare@neofreko/electron-html-to@janzal/koa-joi-router@joeybaker/hihat@knowledge-otp/mongoose@jesstelford/mongoose@jhonpangit/color-full@dwadwadwa/theme@dwing/koa-joi-router@nook/koa-joi-router@slater/theme@seitk/mongoose-paginate-v2@seal-security/mongoose-fixed@revoinc/koa-joi-routermyceliummongoose-fixedsetdefaultsoninsertmongoose-updated-drivermongoose-nestedmongoose-reloadmongoose-prefixsetmongooserkmongoose_sharan
1.0.1

10 years ago

1.0.0

10 years ago

0.0.5

12 years ago

0.0.4

12 years ago

0.0.3

13 years ago

0.0.2

13 years ago

0.0.1

13 years ago