JaveScript中的字串操作
阿新 • • 發佈:2020-12-09
技術標籤:JavaScriptjavascript
JaveScript中的字串操作
一.字串的查詢
1.indexOf 和 lastIndexOf
這兩個方法都有兩個引數:1.第一個引數是要找的字元 2.第二個引數是從那個位置開始找
當只有第一個引數的時候,找的到返回字元所在的位置並且只找一次,找不到返回 -1
1.1 indexOf
從字串初始位置開始找
var str1 = 'asd12da'
//從前面開始找
console.log(str1.indexOf('a')) //輸出0(第一次找到a,a在第零個位置)
console. log(str1.indexOf('a', 1)) //輸出6(從1號位開始找,6號位找到a)
console.log(str1.indexOf('c')) //輸出-1
1.2 lastIndexOf
從字串末尾位置開始找
var str1 = 'asd12da'
//從前面開始找
console.log(str1.lastIndexOf('a')) //輸出0(第一次找到a,a在第零個位置)
console.log(str1.lastIndexOf('a', 1)) //輸出0(從1號位開始找,0號位找到a)
console. log(str1.lastIndexOf('c')) //輸出-1
2. includes
找到返回true找不到返回false
var str1 = 'asd12da'
console.log(str1.includes('a')); //true
console.log(str1.includes('c')); //false
3.search
只有一個引數並且從頭開始找,找到了就返回字元所在位置,找不到返回 -1
var str1 = 'asd12da'
console.log(str1.search('a')); //0
console.log (str1.search('c')); //-1
二.字串替換
1. replace
第一個引數可以是字串也可以是正則表示式
string.replace ( '要替換的字串' , '新的字串' )
var str1 = 'asc132a'
//從頭開始只換一次
console.log(str1.replace('a', 'b')); //bsc132a
//g全域性匹配,遇到a就換成b
console.log(str1.replace(/a/g, 'b')); //bsc132b
2.字串去空
2.1 trim去空格
只能去除字串前面的 ’ ’
var str = ' a s d '
console.log(str.trim()); //a s d
2.2 replace去空格
使用正則表示式去空格,可以去掉字串中所有空
var str = ' a s d '
console.log(str.replace(/\s/g, '')); //asd
三.字串拼接
1.使用 + 拼接
var str1 = 'asd'
var str2 = 'bcd'
console.log(str1 + str2); // asdbcd
2.使用concat拼接
把str2加在str1的後面
str1.concat(str2)
var str1 = 'asd'
var str2 = 'bcd'
console.log(str1.concat(str2)); // asdbcd
四.字串擷取
1. substr 和 substring
substr的兩個引數是索引(從哪到哪,包含)
substring的兩個引數是長度(到什麼為止,不包含)
當為一個引數時,從那位開始擷取用法一樣
var str1 = 'asd1234'
console.log(str1.substr(1, 3)); //sd1
console.log(str1.substring(1, 3)); //sd
console.log(str1.substring(1)) //sd1234
console.log(str1.substr(1)) //sd1234
2.slice
和substring用法相同
var str1 = 'asd1234'
console.log(str1.split(1)) //sd
3.split
以字串擷取並且每段以陣列取出
var str2 = '1,2,3,a,3,d'
console.log(str2.split(',')); //輸出如下圖
console.log(str2.split(',',3)); //第二個引數3是用來限制陣列長度的
五.字串轉換
1. toString
返回以一個字串表示的 Number 物件值
(將Number轉化為String)
var str = 1232
console.log(str.toString());
console.log(typeof (str));
console.log(typeof (str.toString()));
2.valueOf
返回 Array 物件的原始值
var str1 = 'dassadsa';
console.log(typeof str1); //string
var str2 = new String('dasdsadsadsa');
console.log(typeof str2); //object
3.大小寫轉換
str.toLowerCase() //轉小寫
str.toUpperCase() //轉大寫
str.toLocaleLowerCase() //本地小寫
str.toLocaleUpperCase() //本地大寫
4.字串轉化為數字
parseInt 字串轉換為int型
parseFloat 字串轉換為float型
var str = '1232'
console.log(typeof (parseInt(str)));
console.log(typeof (parseFloat(str)));
4.1 toFixed
把數字轉換為字串,結果的小數點後有指定位數的數字
var str = '1232'
console.log(parseFloat(str).toFixed(2)); //1232.00
console.log(typeof (parseInt(str).toFixed(2)));
4.1 isNaN
判斷是否為數字(如果不是數字輸出true,如果是數字輸出false)
var s = 'a'
var t = 1
console.log(isNaN(s));
console.log(isNaN(t));