记录–String的常用属性和方法。
不搬运那些方法的定义,只写代码的执行结果。看结果基本就明白方法的具体用法了吧。有的参数如果不理解就查查定义吧,让自己印象更深
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>字符串方法</title>
</head>
<body>
<script>
let str1 = new String("hello word!");
let str2 = "hello word2 😍";
console.log(str1, str2); // String {"hello word!"}"hello word2"
console.log(str1.valueOf()); // hello word!
console.log(str1.toString()); // hello word!
console.log(str1.length, str2.length); // 11 11
console.log(str1.charAt(2)); // l
console.log(str1.charCodeAt(2), str2.charCodeAt(3)); // 108 108
console.log(String.fromCharCode(97, 98, 99)); // abc
console.log(String.fromCodePoint(0x1f60a)); // 😊
console.log(str2.codePointAt(13)); // 56845 =>😍
// 字符串操作方法
let str3 = "hello,";
let str4 = new String("树先生!");
let arr1 = [..."树先生!"];
console.log(arr1); // ["树", "先", "生", "!"]
console.log(str3.concat(str4)); // hello,树先生!
console.log(str3.concat(arr1)); // hello,树,先,生,!
console.log(str3.slice(0, 5), str3); // hello hello,
console.log(str3.substr(0, 5), str3); // hello hello, 第二个参数表示 从0开始后的5个字符
console.log(str3.slice(-1)); // ,
console.log(str3.substr(-1, -3)); // 输出为空 第二个参数为负数时,转换为 0
// 字符串位置
let str5 = "0123456789876543210";
console.log(str5.indexOf(5)); // 5
console.log(str5.lastIndexOf(1)); // 17
// 字符串包含方法
let str6 = "badbod";
let str7 = new String("cadacdadc");
console.log(str6.includes("bad")); // true
console.log(str7.startsWith("adc"), str7.startsWith("cad")); // false true
let str8 = " i am ironmen ! ";
console.log(str8.trim()); // 'i am ironmen !'
let str9 = "h ";
console.log(str9.repeat(9)); //h h h h h h h h h
console.log(str9.padStart(5, ".")); //'...h '
console.log(str1.toLowerCase(), str2.toLocaleLowerCase()); //hello word! hello word2 😍
console.log(str1.toUpperCase(), str2.toLocaleUpperCase()); //HELLO WORD! HELLO WORD2 😍
// 字符串模式匹配方法
let str0 = "cat,bat,sat,fat";
let reg1 = new RegExp(/.at/);
let reg2 = /at/;
console.log(str0.match(reg1)); //["cat", index: 0, input: "cat,bat,sat,fat", groups: undefined]
console.log(str0.search(reg2)); // 1 第一个匹配的位置
console.log(str0.replace(/at/g, "ond")); // cond,bond,sond,fond
console.log(str0.replace(/(.at)/g, "word $1")); //word cat,word bat,word sat,word fat
console.log(str0.split(",")); //["cat", "bat", "sat", "fat"]
let str11 = "blank!";
let str12 = "blank !";
console.log(str11.localeCompare("blank!"), str12.localeCompare("blank!")); // 0 1 会匹配到空格。0为匹配到相同的
</script>
</body>
</html>