方法說明:
獲取字符串的字節長度。
這個函數與 String.prototype.length 不同點在於,後者返回的是字符串的字符數。
語法:
代碼如下:
Buffer.byteLength(string, [encoding])
接收參數:
string 字符創
encoding 字符串編碼,默認為 ‘utf8′
例子:
代碼如下:
str = '\u00bd + \u00bc = \u00be';
console.log(str + ": " + str.length + " characters, " +
Buffer.byteLength(str, 'utf8') + " bytes");
// ½ + ¼ = ¾: 9 characters, 12 bytes
源碼:
代碼如下:
Buffer.byteLength = function(str, enc) {
var ret;
str = str + '';
switch (enc) {
case 'ascii':
case 'binary':
case 'raw':
ret = str.length;
break;
case 'ucs2':
case 'ucs-2':
case 'utf16le':
case 'utf-16le':
ret = str.length * 2;
break;
case 'hex':
ret = str.length >>> 1;
break;
default:
ret = internal.byteLength(str, enc);
}
return ret;
};