-
1 # 許三少14
-
2 # 霸天虎0606
String函數有3個方法,分別是:
1、String.fromCharCode():通過一串Unicode編碼創建字符串。
2、String.fromCodePoint():通過一串碼點創建字符串。
3、String.raw():通過模板字符串創建字符串。
String.fromCharCode()
該方法返回一個由一組Unicode值序列組成字符串。
var str = String.fromCharCode(65,66,67);
str; // ABC
該方法無法識別大於0xFFFF的碼點,即無法識別32位的UTF-16字符。比如" "這個字符的Unicode編碼是0x20BB7。
var str = String.fromCharCode(0x20BB7);
str; // "ஷ"
String.fromCodePoint()
String.fromCodePoint()方法用來彌補String.fromCharCode()無法識別32位UTF-16字符的不足。
var str = String.fromCharCode(0x20BB7);
str; // " "
String.raw()
String.raw()方法是一個模板字符串的處理函數,用來獲取一個模板字符串的原始字面值。類似於Python的字符串前綴“r”和C#的字符串前綴“@”。
// 對於模板字符串
var t = `Hi\\n5!`;
// 可以通過String.raw方法來構建
var r = String.raw`Hi\n5!`;
r === t; // true
對於String.raw方法,通過不需要把它看成一個普通函數,只需要把它放在模板字符串前面就可以了。但接在它後面的模板字符串,不需要對反斜線進行轉義。
當String.raw方法用作普通函數調用時,第一個參數應該是一個具有raw屬性的對象,其raw屬性的值應該是一個數組或類數組對象。
var a = String.raw({ raw: "test" }, 0, 1, 2 );
a; // "t0e1s2t;
// 等同於
var b = String.raw({ raw: ['t', 'e', 's', 't'] }, 0, 1, 2 );
b; // "t0e1s2t;
a === b; // true
回覆列表
string函數包含指定長度重複字符的字符串。
string函數的語法有下面的命名參數:
number 必要參數;Long。返回的字符串長度。如果 number 包含 Null,將返回 Null。
character 必要參數;Variant。為指定字符的字符碼或字符串表達式,其第一個字符將用於建立返回的字符串。
如果 character 包含 Null,就會返回 Null。
注意number是返回的字符串長度,而不是character的重複次數。
實例:
z=string(3,"w")
z的返回值是:www
z=string(3,"aw")
z的返回值是:awa
z=string(3,"www")
z的返回值是:www
說明
如果指定 character 的數值大於 255,String 會按下面的公式將其轉為有效的字符碼:
character Mod 256