整理下array和string的易混淆的方法

2021-08-02 22:51:56 字數 4227 閱讀 5947

indexof(), replace(),slice(),split(),substr(),substring(),charat(),charcodeat()

slice(),splice(),tostring()

1:array中slice方法

arrayobject.slice(start,end) 可以從已有陣列中返回選定的元素

返回值:返回的是乙個新的陣列,包含從start到end (不包括該元素)的arrayobject中的元素

該方法並不會修改原陣列,而是返回乙個子陣列

var arr = [2,35,6,73,6,7,8];

console.log("原陣列:" + arr + "子陣列:" + arr.slice(0));

console.log("原陣列:" + arr + "子陣列:" + arr.slice(2,3));

console.log("原陣列:" + arr + "子陣列:" + arr.slice(2,5));

console.log("原陣列:" + arr + "子陣列:" + arr.slice(2,-4));

console.log("原陣列:" + arr + "子陣列:" + arr.slice(-3,-6));

console.log("原陣列:" + arr + "子陣列:" + arr.slice(-3,6));

原陣列:2,35,6,73,6,7,8 子陣列:2,35,6,73,6,7,8

原陣列:2,35,6,73,6,7,8 子陣列:6

原陣列:2,35,6,73,6,7,8 子陣列:6,73,6

原陣列:2,35,6,73,6,7,8 子陣列:6

原陣列:2,35,6,73,6,7,8 子陣列:

原陣列:2,35,6,73,6,7,8 子陣列:6,7

(開始值為負值的時候,結束值要在開始值的後面才起作用,否則無效)

2:array中splice方法

arrayobject.splice(index,howmany,item1,...,itemx)  向/陣列中新增/刪除專案,然後返回被刪除的專案

返回值:包含被刪除專案的新陣列,會改變原始陣列

splice()方法可刪除從index處開始的零個或多個元素,並且用引數列表中宣告的乙個或多個值來替換哪些被刪除的元素

var arr = [2,35,6,73,6,7,8];

console.log("原陣列:" + arr );

arr.splice(2,3);

console.log("新陣列:" + arr);

arr.splice(2,3,"新的a","新的b","新的c");

console.log("新陣列:" + arr);

原陣列:2,35,6,73,6,7,8

新陣列:2,35,7,8

新陣列:2,35,新的a,新的b,新的c

tostring() 方法可把陣列轉換為字串,並返回結果。

var arr = [2,35,6,73,6,7,8];

console.log(arr.tostring());//2,35,6,73,6,7,8

string部分

indexof(), replace(),slice(),split(),substr(),substring(),charat(),charcodeat()

1:indexof() 檢索字串,常用來判斷瀏覽器型別,某個字串元素是否存在,返回字串出現的index值

---- charat(),charcodeat()

chartat(index) 返回指定位置的字元

charcodeat(index) 返回指定位置的字元的 unicode 編碼。這個返回值是 0 - 65535 之間的整數

2:replace() 替換與正規表示式匹配的子串  stringobject.replace(regexp/substr,replacement);

3:slice() 方法可提取字串的某個部分,並以新的字串返回被提取的部分  與陣列的slice()方法比較相似

string 物件的方法 slice()、substring() 和 substr() (不建議使用)都可返回字串的指定部分。

slice() 比 substring() 要靈活一些,因為它允許使用負數作為引數。

slice() 與 substr() 有所不同,因為它用兩個字元的位置來指定子串,而 substr() 則用字元位置和長度來指定子串。

var ostring = "02394urjsba2943";

console.log("原字串:" + ostring + "子字串:" + ostring.slice(0));

console.log("原字串:" + ostring + "子字串:" + ostring.slice(2,3));

console.log("原字串:" + ostring + "子字串:" + ostring.slice(2,5));

console.log("原字串:" + ostring + "子字串:" + ostring.slice(2,-4));

console.log("原字串:" + ostring + "子字串:" + ostring.slice(-3,-6));

console.log("原字串:" + ostring + "子字串:" + ostring.slice(-3,6));

console.log("原字串:" + ostring + "子字串:" + ostring.slice(-11,6));

console.log("原字串:" + ostring + "子字串:" + ostring.slice(3,-2));

原字串:02394urjsba2943 子字串:02394urjsba2943

原字串:02394urjsba2943 子字串:3

原字串:02394urjsba2943 子字串:394

原字串:02394urjsba2943 子字串:394urjsba

原字串:02394urjsba2943 子字串:

原字串:02394urjsba2943 子字串:

原字串:02394urjsba2943 子字串:4u

原字串:02394urjsba2943 子字串:94urjsba29

(開始值為負值的時候,結束值要在開始值的後面才起作用,否則無效)

split() 用於把乙個字串分割成字串陣列

stringobject.split(separator,howmany) separator 字串或者正規表示式

返回值: 乙個字串陣列,該陣列是通過在separator指定的邊界處將字串stringobject 分割成子串建立的,返回的陣列中的資環不包括separator自身

"2:3:4:5".split(":")	//將返回["2", "3", "4", "5"]

"hello".split("", 3) //可返回 ["h", "e", "l"]

var str="how are you doing today?"

console.log(str.split(" ") + "

")//how,are,you,doing,today?

console.log(str.split("") + "

")//h,o,w, ,a,r,e, ,y,o,u, ,d,o,i,n,g, ,t,o,d,a,y,?

console.log(str.split(" ",3))//(3) ["how", "are", "you"]

substring() 方法用於提取字串中介於兩個指定下標之間的字元。

stringobject.substring(start,stop) 都是非負數,不接受負數

返回值 乙個新的字串  該字串值包含 stringobject 的乙個子字串,其內容是從 start 處到 stop-1 處的所有字元,其長度為 stop 減 start。

如果 start 比 stop 大,那麼該方法在提取子串之前會先交換這兩個引數。

var str="hello world!"

document.write(str.substring(3))//lo world!

document.write(str.substring(3,7)) //lo w

Array物件和String物件

array物件 isarray 判斷的物件 判斷這個物件是否是陣列物件 concat 陣列1,陣列2 組合成乙個新的陣列 every 函式 返回值是布林型別,這個函式中有三個引數,一假即假 some 函式 返回值是布林型別,這個函式中有三個引數,一真即真 filter 函式 返回的陣列中每乙個符合條...

array和string的方法

程式設計師是怎麼禿的?撓頭撓禿的 最近一兩天一直在學習array和string,總結一下建構函式,以及衍生的函式 shift 從集合中把第乙個元素刪除,並返回這個元素的值。unshift 在集合開頭新增乙個或更多元素,並返回新的長度 push 在集合中新增元素,並返回新的長度 pop 從集合中把最後...

string和array變數用到的那些函式(上)

在js中,字串 string 和陣列 array 是常用到的變數,js中也為這2種變數提供了各種強大的函式。如果能較好的運用這些函式,在進行演算法計算時可以說是事半功倍,但作為初學者,我們常常對這些函式感到眼花繚亂,下面將對string和array中常用到的函式進行盤點和比較。一 string變數和...