效率JSON与Javascript中的分隔字符串

时间:2014-10-10 22:36:22

标签: javascript json node.js zeromq

我目前正在使用Node.js中的zeroMQ。 ZeroMQ允许以字符串形式在应用程序之间传递消息。该应用程序将处理数十万条消息。

解析分隔的字符串会更快吗?

"foo bar baz".split(' ');

或字符串化的JSON对象:

JSON.parse('{"a":"foo","b":"bar","c":"baz"}');

如何在Node.js和/或浏览器中测试每个(速度和内存)的效率。

1 个答案:

答案 0 :(得分:0)

测试在浏览器中执行任何指令所需的时间(假设您有Linux的chrome或chromium),您可以使用类似于以下代码的内容:

// first open the inspector **ctrl+shift+i** then switch to the console tab to write the code 
// or you can go to `tools > developer tools` then choose the console tab 
// here is the code : 


console.time('t1');
"foo bar baz".split(' ');
console.timeEnd('t1'); 

// result t1: 0.020ms 


console.time('t2');
// you instructions here
JSON.parse('{"a":"foo","b":"bar","c":"baz"}');
console.timeEnd('t2');

// result t2: 0.046ms

很明显,第一种方式比第二种方式更快

注意要将对象字符串转换为JSON格式,您必须将属性及其值放在""

例如在我们的案例中:

a:" foo" 应为" a":" foo"

b:&#34; bar&#34; 应该&#34; b&#34;:&#34; bar&#34; 等等< / p>

所以整个字符串(&#39; {a:&#34; foo&#34;,b:&#34; bar&#34;,c:&#34; baz&#34;}&第二种方式#39; ) 应该&#39; {&#34; a&#34;:&#34; foo&#34;,&#34; b&#34;:&#34; bar&#34;,&#34; C&#34;:&#34;巴兹&#34;}&#39;