js陣列與字串型別相同方法的比較

2022-05-05 10:57:23 字數 2035 閱讀 4964

陣列和字串有很多相似的對方,比如陣列和字串都有以下方法:

concat

indexof

lastindexof

slice

includes

鑑於tostring及valueof方法基本型別都有,這裡就不做過多介紹了

var arr = [nan];

console.log(arr.indexof(nan)) //-1

console.log(arr.includes(nan)) //true

var arr = [,,];

console.log(arr.indexof(undefined))//-1

console.log(arr.includes(undefined))//true

這是因為 indexof 認為稀疏陣列,省略掉的值是不存在的,但 includes 認為是undefined

功能:搜尋字串or陣列中的元素,並返回它所在的位置。

語法:array.indexof(item,start)

let str = "abcd";

let arr = ["a","b","c","d"];

console.log(str.indexof("a", -1)); //0

console.log(arr.indexof("a", -1)); //-1

let str = "1";

let arr = ["1"];

console.log(str.indexof(1)); //0

console.log(arr.indexof(1)); //-1

功能:用來判斷乙個字串or陣列是否包含乙個指定的值,如果是返回 true,否則false

語法:arr.includes(searchelement, fromindex)

let str = "abcd";

let arr = ["a","b","c","d"];

console.log(str.includes("a", -1)); //true

console.log(arr.includes("a", -1)); //false

let str = "1";

let arr = ["1"];

console.log(str.includes(1)); //true

console.log(arr.includes(1)); //false

功能:提取字串or陣列的某個部分,不會改變現有的值,而僅僅會返回被連線字串or陣列的乙個副本。

語法:arr.slice(start,end)

let arr1 = [1, 2, 3, 4, 5, 6];

console.log(arr1.slice(1, 4)) //[2, 3, 4];

let str1 = "hello root";

console.log(str1.slice(1,4)); //ell

功能:方法用於連線兩個或多個字串or陣列;不會改變現有的值,而僅僅會返回被連線字串or陣列的乙個副本。

語法:arr.concat(arrayx,arrayx,......,arrayx)

let str1 = "hello";

let str2 = " world!";

console.log(str1.concat(str2)); //"hello world!"

let arr1 = ["hello"];

let arr2 = ["root"];

console.log(arr1.concat(arr2)); //["hello", "root"]

JS字串與陣列的方法

var s 李靜同學真棒!學的真棒 alert s.charat 3 學 找到對應下標字元,不相容ie低版本 alert s 3 學 s 3 志 不可更改 用於加密 alert s.charcodeat 3 23398 alert string.fromcharcode 23398 學alert s...

JS陣列字串方法擴充套件

今天整理了一些js陣列字串的擴充套件方法,大部分是自己寫的,一小部分 於網路,也進行了適當優化。ps 陣列的操作大部分都返回了this,因此可進行 迷人的 鏈式呼叫 本例中.map func 若需對陣列的每一項進行某種相同操作,func需要有返回值 壓縮後 原始碼 function 獲取最後乙個元素...

js字串的字典序 JS陣列 字串常用方法

陣列 1.push 向陣列尾部新增乙個或多個元素,並返回新增新元素後的陣列長度。注意,該方法會改變原陣列。1 var arr 1,2,3 2 console.log arr 1,2,3 3 var b arr.push 4 4 console.log b 4 表示當前陣列長度 5 console.l...