1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- 'use strict';
- var Refs = require('../../');
- function trace(fn) {
- var time = Date.now();
- fn();
- return Date.now() - time;
- }
- describe.skip('performance characteristics', function() {
- it('refs access', function() {
- var refs = new Refs({ name: 'foos', collection: true }, { name: 'bar' });
- var foos = [];
- var a = {}, b;
- refs.bind(a, 'foos');
- for (var i = 0; i < 50000; i++) {
- b = {};
- foos.push(b);
- a.foos.add(b);
- }
- var time = trace(function() {
- for (var i = 0; i < foos.length; i++) {
- foos[i].bar;
- }
- });
- console.log('refs access (ms)', time);
- });
- it('default access', function() {
- var foos = [];
- var a = {}, b;
- for (var i = 0; i < 50000; i++) {
- b = { bar: a };
- foos.push(b);
- }
- var time = trace(function() {
- for (var i = 0; i < foos.length; i++) {
- foos[i].bar;
- }
- });
- console.log('default access (ms)', time);
- });
- });
|