1 var source = new Buffer(100),
2 dest = new Buffer(100), i, j, k, tmp, count = 1000000, bytes = 100;
4 for (i = 99 ; i >= 0 ; i--) {
8 var str = "This is a nice String.",
9 buf = new Buffer("This is a lovely Buffer.");
11 var start = new Date();
12 for (i = count * 100; i > 0 ; i--) {
13 if (Buffer.isBuffer(str)) {}
16 console.log("Buffer.isBuffer(str) " + (end - start) + " ms");
18 var start = new Date();
19 for (i = count * 100; i > 0 ; i--) {
20 if (Buffer.isBuffer(buf)) {}
23 console.log("Buffer.isBuffer(buf) " + (end - start) + " ms");
25 var start = new Date();
26 for (i = count * 100; i > 0 ; i--) {
27 if (str instanceof Buffer) {}
30 console.log("str instanceof Buffer " + (end - start) + " ms");
32 var start = new Date();
33 for (i = count * 100; i > 0 ; i--) {
34 if (buf instanceof Buffer) {}
37 console.log("buf instanceof Buffer " + (end - start) + " ms");
39 for (i = bytes ; i > 0 ; i --) {
40 var start = new Date();
41 for (j = count ; j > 0; j--) {
42 tmp = source.toString("ascii", 0, bytes);
45 console.log("toString() " + i + " bytes " + (end - start) + " ms");
48 for (i = bytes ; i > 0 ; i --) {
49 var start = new Date();
50 for (j = count ; j > 0; j--) {
52 for (k = 0; k <= i ; k++) {
53 tmp += String.fromCharCode(source[k]);
57 console.log("manual string " + i + " bytes " + (end - start) + " ms");
60 for (i = bytes ; i > 0 ; i--) {
61 var start = new Date();
62 for (j = count ; j > 0 ; j--) {
63 for (k = i ; k > 0 ; k--) {
68 console.log("Manual copy " + i + " bytes " + (end - start) + " ms");
71 for (i = bytes ; i > 0 ; i--) {
72 var start = new Date();
73 for (j = count ; j > 0 ; j--) {
74 for (k = i ; k > 0 ; k--) {
79 console.log("Direct assignment " + i + " bytes " + (end - start) + " ms");
82 for (i = bytes ; i > 0 ; i--) {
83 var start = new Date();
84 for (j = count ; j > 0 ; j--) {
85 source.copy(dest, 0, 0, i);
88 console.log("Buffer.copy() " + i + " bytes " + (end - start) + " ms");