String 字串
Node.js String 字串
變數加入字串中
在設定字串時使用鍵盤左上角 重音符
將字串括起來,然後中間要插入的變數使用 ${變數名稱}
即可將變數資料插入到字串中間
const my_name = 'KJ';
// 將其他變數加入字串中
const message = `Hi, my name is ${my_name}`;
console.log(message);
字串函式
變數 | 說明 |
---|---|
String.slice() | 分割字串 |
String.substring() | 分割字串 |
String.replace() | 取代字串 |
String.charAt() | 字串第幾個字 |
String.charCodeAt() | 字串第幾個字的 UTF-16 code |
String.fromCharCode() | 從 UTF-16 code 轉換成字串 |
String.codePointAt() | 字串第幾個字的 Unicode code |
String.indexOf() | 字串在第幾個索引位置,從 0 開始數,若找不到回傳 -1 |
String.search() | 搜尋符合正規表示式文字位置 |
String.match() | 符合正規表示式的文字,有找到回傳陣列,沒找到回傳 null |
String.matchAll() | 符合正規表示式的文字,有找到回傳陣列,沒找到回傳 null,有更詳細的比對資訊 |
String.split() | 切割字串 |
String.padEnd() | 填入字串到字尾 |
String.padStart() | 填入字串到字首 |
String.concat() | 連接字串 |
String.startsWith() | 搜尋起始字串是否為指定字串 |
String.endsWith() | 搜尋結為字串是否為指定字串 |
String.trim() | 去除前後空白 |
String.trimEnd() | 去除後方空白 |
String.trimStart() | 去除前方空白 |
String.repeat() | 重複字串 |
String.toLowerCase() | 轉換成小寫 |
String.toUpperCase() | 轉換成大寫 |
String.toString() | 轉換成字串類型變數 |
String.includes() | 判斷字串是否存在(大小寫不同) |
String.matchAll() | 取得符合正規表示式的字串陣列 |
String.slice() 分割字串
const str = 'JavaScript';
console.log(str.slice(1, 3));
// expected output: "av"
console.log(str.slice(2));
// expected output: "vaScript"
String.substring() 分割字串
const str = 'JavaScript';
console.log(str.substring(1, 3));
// expected output: "av"
console.log(str.substring(2));
// expected output: "vaScript"
String.chatAt() 字串第幾個字
let my_name = "Hi, My name is KJ";
// M
console.log(my_name.charAt(4));
charCodeAt 字串第幾個字的 UTF-16 code
let my_name = "Hi, My name is KJ";
// 77
console.log(my_name.charCodeAt(4));
取得指定字串的 Ascii
// 56
console.log('A'.charCodeAt(0));
// 97
console.log('a'.charCodeAt(0));
// 98
console.log('abc'.charCodeAt(1));
String.fromCharCode() 從 UTF-16 code 轉換成字串
// a
String.fromCharCode(97);
// b
String.fromCharCode(98);
// c
String.fromCharCode(99);
String.indexOf() 字串在第幾個索引位置
從 0 開始數,若找不到回傳 -1
let my_name = "Hi, My name is KJ";
// 15
console.log(my_name.indexOf('KJ'));
let my_name = "Hi, My name is KJ";
// -1
console.log(my_name.indexOf('Unknown'));
String.match() 符合正規表示式的文字
有找到回傳陣列,沒找到回傳 null
const paragraph = 'The quick brown fox jumps over the lazy dog. It barked.';
const regex = /[A-Z]/g;
const found = paragraph.match(regex);
// [ 'T', 'I' ]
console.log(found);
const paragraph = 'the quick brown fox jumps over the lazy dog. it barked.';
const regex = /[A-Z]/g;
const found = paragraph.match(regex);
// null
console.log(found);
String.split() 切割字串
const message = 'Hi, my name is Kay Jay';
// 從空白切割
const words = message.split(' ');
// [ 'Hi,', 'my', 'name', 'is', 'Kay', 'Jay' ]
console.log(words);
// 切割每個字元
const chars = message.split('');
// [
// 'H', 'i', ',', ' ', 'm',
// 'y', ' ', 'n', 'a', 'm',
// 'e', ' ', 'i', 's', ' ',
// 'K', 'a', 'y', ' ', 'J',
// 'a', 'y'
// ]
console.log(chars);
// 複製字串成一個陣列
const messageCopyArray = message.split();
// [ 'Hi, my name is Kay Jay' ]
console.log(messageCopyArray);
String.padEnd() 填入字串到字尾
const my_name = 'KJ';
// 填入指定字串到字尾
// "KJ....."
console.log(my_name.padEnd(7, '.'));
// 填入空白到字尾
// "KJ "
console.log(my_name.padEnd(7));
String.padStart() 填入字串到字首
const my_name = 'KJ';
// 填入指定字串到字首
// ".....KJ"
console.log(my_name.padStart(7, '.'));
// 填入空白到字首
// " KJ"
console.log(my_name.padStart(7));
String.trim() 去除前後空白
const my_name = ' KJ ';
// " KJ "
console.log(my_name);
// "KJ"
console.log(my_name.trim());
String.repeat() 重複字串
let my_name = "KJ";
// KJKJKJ
console.log(my_name.repeat(3));