codemix/fast.js — pull request #65 by phpnode (2014-11-15 19:15:27+00:00)
Title: fix fast.assign() to align with spec

fixes #63

I also changed the benchmarks to defeat some of V8's `for..in` optimisations which I think were obscuring the result.

```
Object.assign() vs fast.assign()
✓ Object.assign() (shim!) x 61,570 ops/sec ±1.78% (71 runs sampled)
✓ fast.assign() x 72,839 ops/sec ±1.70% (82 runs sampled)
✓ fast.assign() v0.0.4c x 71,028 ops/sec ±1.69% (82 runs sampled)
✓ fast.assign() v0.0.4b x 64,938 ops/sec ±1.67% (83 runs sampled)
✓ lodash.assign() x 69,040 ops/sec ±1.49% (89 runs sampled)

Result: fast.js is 18.30% faster than Object.assign() (shim!).

Object.assign() vs fast.assign() (3 arguments)
✓ Object.assign() (shim!) x 38,547 ops/sec ±1.28% (85 runs sampled)
✓ fast.assign() x 44,037 ops/sec ±1.19% (81 runs sampled)
✓ fast.assign() v0.0.4c x 44,914 ops/sec ±1.74% (86 runs sampled)
✓ fast.assign() v0.0.4b x 37,553 ops/sec ±1.53% (83 runs sampled)

Result: fast.js is 14.24% faster than Object.assign() (shim!).

Object.assign() vs fast.assign() (10 arguments)
✓ Object.assign() (shim!) x 16,210 ops/sec ±1.71% (83 runs sampled)
✓ fast.assign() x 19,496 ops/sec ±1.69% (81 runs sampled)
✓ fast.assign() v0.0.4c x 19,341 ops/sec ±1.97% (81 runs sampled)
✓ fast.assign() v0.0.4b x 15,632 ops/sec ±1.91% (82 runs sampled)

Result: fast.js is 20.27% faster than Object.assign() (shim!).
```