1. 程式人生 > 其它 >JaveScript中的字串操作

JaveScript中的字串操作

技術標籤: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));

在這裡插入圖片描述