Sha256: 4dfcd3d3c75affa6d45ea26ea2528cfb1b97645d2e2130f506d7adbf3019a12f

Contents?: true

Size: 1.18 KB

Versions: 5

Compression:

Stored size: 1.18 KB

Contents

var jsonpointer = require('./')

var i
var obj = {
  a: 1,
  b: {
    c: 2
  },
  d: {
    e: [{ a: 3 }, { b: 4 }, { c: 5 }]
  }
}

// Get
console.time('get first level property')
for (i = 0; i < 1e6; i++) {
  jsonpointer.get(obj, '/a')
}
console.timeEnd('get first level property')

console.time('get second level property')
for (i = 0; i < 1e6; i++) {
  jsonpointer.get(obj, '/d/e')
}
console.timeEnd('get second level property')

console.time('get third level property')
for (i = 0; i < 1e6; i++) {
  jsonpointer.get(obj, '/d/e/0')
}
console.timeEnd('get third level property')

// Set
console.time('set first level property')
for (i = 0; i < 1e6; i++) {
  jsonpointer.set(obj, '/a', 'bla')
}
console.timeEnd('set first level property')

console.time('set second level property')
for (i = 0; i < 1e6; i++) {
  jsonpointer.set(obj, '/d/e', 'bla')
}
console.timeEnd('set second level property')

console.time('set third level property')
for (i = 0; i < 1e6; i++) {
  jsonpointer.set(obj, '/d/e/0', 'bla')
}
console.timeEnd('set third level property')

console.time('push property into array')
for (i = 0; i < 1e6; i++) {
  jsonpointer.set(obj, '/d/e/-', 'bla')
}
console.timeEnd('push property into array')

Version data entries

5 entries across 5 versions & 2 rubygems

Version Path
node-compiler-0.9.1 vendor/node/deps/npm/node_modules/request/node_modules/har-validator/node_modules/is-my-json-valid/node_modules/jsonpointer/benchmark.js
node-compiler-0.9.0 vendor/node-v7.2.1/deps/npm/node_modules/request/node_modules/har-validator/node_modules/is-my-json-valid/node_modules/jsonpointer/benchmark.js
select_all-rails-0.3.1 node_modules/jsonpointer/benchmark.js
node-compiler-0.8.0 vendor/node-v7.2.0/deps/npm/node_modules/request/node_modules/har-validator/node_modules/is-my-json-valid/node_modules/jsonpointer/benchmark.js
node-compiler-0.7.0 vendor/node-v7.1.0/deps/npm/node_modules/request/node_modules/har-validator/node_modules/is-my-json-valid/node_modules/jsonpointer/benchmark.js