JavaScript 字串(上)
三種引號
字串可以包含在單引號、雙引號或反引號中
//用法
let single = 'Single quotation mark'; //單引號
let double = "Double quotation mark"; //雙引號
let backquote = `backquote`; //反引號
- 單引號 與 雙引號 基本相同,
- 反引號 允許我們通過 ${…} 將任何運算式嵌入到字串中:
- 反引號 允許字串換行:
//用法
//可以插入變數及運算式
var a = "Hello";
alert(`${a} World`); // Hello World
//可以換行
let row = `first line
Second line
Third line
`;
字串特殊字符
所有的特殊字符都以反斜杠字符 \ 開始,它也被稱為“轉義字符”,
//用法
let string1 = "Hello\nWorld";
let string2 = "\u{20331}"; // 佫,罕見的中國象形文字(長 unicode)
| 代碼 | 輸出 |
|---|---|
| ' | 單引號 |
| " | 雙引號 |
| & | 和號 |
| \ | 反斜杠 |
| \n | 換行符 |
| \r | 回車符 |
| \t | 制表符 |
| \b | 退格符 |
| \f | 換頁符 |
| \xXX | 具有給定十六進制 Unicode XX 的 Unicode 字符,例如:'\x7A' 和 'z' 相同, |
| \uXXXX | 以 UTF-16 編碼的十六進制代碼 XXXX 的 unicode 字符,例如 \u00A9 —— 是著作權符號 ? 的 unicode,它必須正好是 4 個十六進制數字, |
| \u{X…XXXXXX}(1 到 6 個十六進制字符) | 具有給定 UTF-32 編碼的 unicode 符號,一些罕見的字符用兩個 unicode 符號編碼,占用 4 個位元組,這樣我們就可以插入長代碼了, |
length
length 屬性表示字串長度
//用法
let string = 'Hello';
console.log(string.length);// 5
注意: str.length 是一個數字屬性,而不是函式,后面不需要添加括號
charAt()與[]
要獲取在 某個 位置的一個字符可以用 charAt() 或者 []
第一個字符從零位置開始:
//用法
let string = 'Hello';
string.charAt(0); //H
string.[0]; //H
string.charAt(10); //""
string.[10]; //undefined,
如果沒有找到字符:
- [] 回傳 undefined,
- charAt() 回傳一個空字串.
toLowerCase() 與 toUpperCase()
- toLowerCase() 方法可以將字串英文全部變成小寫字母:
- toUpperCase() 方法可以將字串英文全部變成大寫字母:
//用法
'Hello'.toLowerCase(); //hello
'Hello'.toUpperCase(); //HELLO
indexOf()
方法可回傳某個指定的字串值在字串中首次出現的位置,如果沒有找到,則回傳 -1,
有兩個引數
必選的第一個引數是你要查找的字串
可選的第二個引數允許我們從給定的起始位置開始檢索,
//用法
let string = 'Hello World';
string.indexOf('H') // 0
string.indexOf('H', 2) // -1
includes(),startsWith(),endsWith()
- includes():方法回傳布林值,表示是否找到了引數字串,(第二個引數允許我們從給定的起始位置開始檢索,)
- startsWith():方法回傳布林值,表示引數字串是否在原字串的頭部,
- endsWith():方法回傳布林值,表示引數字串是否在原字串的尾部,
//用法
let string = 'Hello World';
string.includes('World') // true
string.includes('World',6) // false
string.startsWith('H') // true
string.endsWith('d') // true
slice(),substr(),substring()
都是截取字串,三個方法都接收 兩個引數
- slice() 方法第一個引數可為負數,第二個引數是指定截取長度,
- substr() 方法第一個引數為負數被替換成0,交換引數位置,小的在前,第二個引數是指定結束位置,
- substring() 方法第一個引數可為負數,第二個引數是指定結束位置,
//用法
var string = 'hello world';
string.slice(-3); //rld
string.sbstr(-3); //rld
string.substring(-3); //hello world
string.slice(3,-4); //lo w
string.substr(3,-4); //""
string.substring(3,-4); //hel
注意:substr()第二個引數指定的是截取的長度,slice()和substirng()第二個引數指定截取的結束位置,
| 方法 | 選擇方式…… | 負值引數 |
|---|---|---|
| slice() | 從 第一個引數 到 第二個引數(不含 第二個引數) | 允許 |
| substring() | 第一個引數 與 第二個引數 之間(包括 第一個引數,但不包括 第二個引數 | 負值代表 0 |
| substr() | 從 第一個引數 開始獲取長為 第二個引數 的字串 | 允許 第一個引數 為負數 |
codePointAt() 與 String.fromCodePoint()
codePointAt() 方法回傳在 引數 位置的字符代碼 :
String.fromCodePoint() 方法通過 引數 創建字符
//用法
// 大小寫字母意思不同
"z".codePointAt(0); // 122
"Z".codePointAt(0); // 90
String.fromCodePoint(90); // Z
注意:字串的比較是按字母順序逐字比較,所有的字串都使用 UTF-16 編碼,比較字母大小,是比較字母在編碼中數字代碼的大小
本文參考:
https://www.w3school.com.cn/
https://javascript.info/
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/297963.html
標籤:其他
