// 存数据,取数据;buf = Buffer.alloc(26);for (var i = 0; i < 26; i++) { ???buf[i] = i + 97;}
- console.log(buf.toString(‘ascii‘));
- console.log(buf.toString(‘ascii‘,0,5));
- console.log(buf.toString(‘utf8‘,0,5));
- console.log(buf.toString(undefined, 0, 5));
输出
???abcdefghijklmnopqrstuvwxyz ???abcde ???abcde ???abcde
const buf = Buffer.from([0x1, 0x2, 0x3, 0x4, 0x5]);const json = JSON.stringify(buf);// 输出: {"type":"Buffer","data":[1,2,3,4,5]}console.log(json);const copy = JSON.parse(json, (key, value) => { ???// 话说我真的没有弄明白这里面的机制 ???// ?这个时候如果单独打印 ???value && value.type === ‘Buffer‘ ???// 返回的其实是一个 false 并不是我们理解的一个true ???// 这个时候输出的是正确的 ???return value && value.type === ‘Buffer‘ ? ???????Buffer.from(value.data) : ???????value; ???// 这个时候输出的竟然是 lin ???return value && value.type === ‘Buffer‘ ? ???????"lin" : ??// lin ???????value; ???// 这个时候输出的就是 m ????return value && value.type === ‘Buffer‘ ? ???????"lin" : ???????"m"; ??// m ???// 这个时候输出的也是 m ????return value && value.type === ‘Buffer‘ ? ???????Buffer.from(value.data) : ???????"m"; ??// m});// 输出: <Buffer 01 02 03 04 05>console.log(copy);