數組和字符串的常用方法

數組的常用方法

push( )

將一個或多個元素添加到數組末尾,返回該數組的新長度(該方法修改原有數組)

語法:數組.push(添加的值)

返回值:當調用該方法時,新的length屬性值將被返回

 var arr = [1, 11, 2, 22, 3, 4];
 var len = arr.push(8, 6);
 console.log(arr);  //[1, 11, 2, 22, 3, 4, 8, 6]
 console.log(len);  //8

unshift( )

將一個或多個元素添加到數組開頭,返回該數組的新長度(該方法修改原有數組)

語法:數組.unshift(添加的值)

返回值:當一個對象調用該方法時,返回其length屬性值。

var arr = [1, 11, 2, 22, 3, 4];
var len = arr.unshift(8, 6,91);
console.log(arr);  //[8, 6, 91, 1, 11, 2, 22, 3, 4]
console.log(len);  //9

pop( )

從數組中刪除最後一個元素,返回被刪除的(當數組爲空時返回undefined),會更改數組的長度

語法:數組.pop( )

返回值:從數組中刪除的元素; 如果數組爲空則返回undefined

var arr = [1, 11, 2, 22, 3, 4];
var len = arr.pop();
console.log(arr);  // [1, 11, 2, 22, 3]
console.log(len);  //4

shift( )

從數組中刪除第一個元素,並返回該元素的值(當數組爲空時返回undefined),會更改數組的長度

語法:數組.shift( )

返回值:從數組中刪除的元素; 如果數組爲空則返回undefined

var arr = [1, 11, 2, 22, 3, 4];
var len = arr.shift();
console.log(arr);  // [11, 2, 22, 3, 4]
console.log(len);  //1

splice( )

通過刪除或替換現有元素或者原地添加新的元素來修改數組,並以數組形式返回被修改的內容,會改變原數組。

語法:數組.splice(start,del[,item1,item2])

start:開始的位置

del:刪除的個數。可選

item1,item2...:添加進數組的元素。可選

返回值:由被刪除的元素組成的一個數組。如果只刪除了一個元素,則返回只包含一個元素的數組。如果沒有刪除元素,則返回空數組。

var arr = [1, 11, 2, 22, 3, 4];
var len = arr.splice(1,0,'jack','tom');
console.log(arr);  // [1, "jack", "tom", 11, 2, 22, 3, 4]
console.log(len);  //[]
var arr = [1, 11, 2, 22, 3, 4];
var len = arr.splice(1,2);
console.log(arr);  // [1, 22, 3, 4]
console.log(len);  //[11, 2]
var arr = [1, 11, 2, 22, 3, 4];
var len = arr.splice(1,2,'joe');
console.log(arr);  // [1, "joe",  22, 3, 4]
console.log(len);  //[11,2]

reverse( )

將數組中元素的位置顛倒,並返回該數組。

語法:arr.reverse( )

返回值:顛倒後的數組。

var arr = [1, 11, 2, 22, 3, 4];
var len = arr.reverse();
console.log(arr);  // [4, 3, 22, 2, 11, 1]
console.log(len);  //[4, 3, 22, 2, 11, 1]

concat( )

合併兩個或多個數組,此方法不會更改現有數組,而是返回一個新數組。

語法:數組.concat(要拼接的數組)

返回值:新的數組

var arr = [1, 11, 2, 22, 3, 4];
var brr=['jack','tom','jen']
var len = arr.concat(brr);
console.log(len);  //[1, 11, 2, 22, 3, 4, "jack", "tom", "jen"]

slice( )

數組的截取

語法:數組.slice(start[,end])

start:從該索引開始提取原數組元素。可選

end:該索引處結束提取原數組元素。可選

var arr = [1, 11, 2, 22, 3, 4];
var len = arr.slice(2);
console.log(len);  // [2, 22, 3, 4]
var arr = [1, 11, 2, 22, 3, 4];
var len = arr.slice(2,5);
console.log(len);  //[2, 22, 3]
var arr = [1, 11, 2, 22, 3, 4];
var len = arr.slice(-4,-2);
console.log(len);  // [2, 22]
var arr = [1, 11, 2, 22, 3, 4];
var len = arr.slice(-4);
console.log(len);  // [2, 22, 3, 4]

join( )

將一個數組(或一個類數組對象)的所有元素連接成一個字符串並返回這個字符串。

語法:數組.join(sep)

sep:指定一個字符串來分隔數組的每個元素。可選

返回值:一個所有數組元素連接的字符串。如果 arr.length 爲0,則返回空字符串。

var arr = [1, 11, 2, 22, 3, 4];
var len = arr.join('-');
console.log(len);  // 1-11-2-22-3-4

sort( )

對數組的元素進行排序,並返回數組。默認排序順序是在將元素轉換爲字符串,然後比較它們的UTF-16代碼單元值

語法:數組.sort( )

返回值:排序後的數組

var arr = [1, 11, 2, 52, 73, 34];
var len = arr.sort();
console.log(arr);  // [1, 11, 2, 34, 52, 73]
console.log(len);  // [1, 11, 2, 34, 52, 73]

indexOf( )

在數組中可以找到一個給定元素的第一個索引,如果不存在,則返回-1

語法:數組.indexOf(要查找的數組)

返回值:首個被找到的元素在數組中的索引位置; 若沒有找到則返回 -1

var arr = [1, 11, 2, 52, 73, 34];
var len = arr.indexOf(52);
console.log(len);  // 3

lastIndexOf( )

在數組中的最後一個的索引,如果不存在則返回 -1。從數組的後面向前查找

語法:數組.lastIndexOf(要查找的數組)

返回值:數組中該元素最後一次出現的索引,如未找到返回-1

var arr = [1, 11, 2, 52, 73, 34,11,23,55];
var len = arr.lastIndexOf(11);
console.log(len);  // 6

every( )

一個數組內的所有元素是否都能通過某個指定函數的測試

語法:數組.every(function(值,下標,數組本身){返回一個條件})

返回值:如果回調函數的每一次返回都爲true 值,返回 true ,否則返回 false

var arr = [81, 11, 62, 52, 73, 34,11,23,55];
var len = arr.every(function(item,index,arry){
    return item>10
});
console.log(len);  // true
var arr = [81, 11, 62, 52, 73, 34,11,23,55];
var len = arr.every(function(item,index,arry){
    return item>30
});
console.log(len);  // false

some( )

數組中是不是至少有1個元素通過了被提供的函數測試

語法:數組.some(function(值,下標,數組本身){返回一個條件})

返回值:數組中有至少一個元素通過回調函數的測試就會返回true;所有元素都沒有通過回調函數的測試返回值纔會爲false

var arr = [81, 11, 62, 52, 73, 34,11,23,55];
var len = arr.some(function(item,index,arry){
    return item>80
});
console.log(len);  // true

filter( )

創建一個新數組, 其包含通過所提供函數實現的測試的所有元素

語法:語法:數組.filter(function(值,下標,數組本身){返回一個條件})

返回值:一個新的、由通過測試的元素組成的數組,如果沒有任何數組元素通過測試,則返回空數組

var arr = [81, 11, 62, 52, 73, 34,11,23,55];
var len = arr.filter(function(item,index,arry){
    return item>30
});
console.log(len);  // [81, 62, 52, 73, 34, 55]

map( )

創建一個新數組,其結果是該數組中的每個元素都調用一個提供的函數後返回的結果。

語法:數組.map(function(值,下標,數組本身){處理的邏輯  返回新的數組 })

返回值:回調函數的結果組成了新數組的每一個元素。

 

var arr = [81, 11, 62, 52, 73, 34,11,23,55];
var len = arr.map(function(item,index,arry){
    return item+10
});
console.log(len);  //  [91, 21, 72, 62, 83, 44, 21, 33, 65]

forEach( )

對數組的每個元素執行一次給定的函數

語法:數組.forEach(function(值,下標,數組本身){遍歷以後的操作 })

返回值:undefined

var arr = [81, 11, 62, 52, 73, 34,11,23,55];
var len = arr.map(function(item,index,arry){
   console.log(item);
   
});

 

字符串的常用方法

charAt( )

一個字符串中返回指定的字符

語法:字符串.charAt(index)

var str = 'jack,tom,jon,li,ming';
var len = str.charAt(3);
console.log(len);//k

charCodeAt( )

通過下標得到字符對應的阿斯克碼

語法:字符串.charCodeAt(index)

var str = 'jack,tom,jon,li,ming';
var len = str.charCodeAt(3);
console.log(len);//107

split( )

使用指定的分隔符字符串將一個string對象分割成子字符串數組,以一個指定的分割字串來決定每個拆分的位置

語法:字符串.split(分隔符[,保留的元素個數])

返回值:返回源字符串以分隔符出現位置分隔而成的一個 Array

var str = 'jack,tom,jon,li,ming';
var len = str.split(' ');
console.log(len);//["jack,tom,jon,li,ming"]
var str = 'jack,tom,jon,li,ming';
var len = str.split(',',2); //注意有沒有空格符
console.log(len);//["jack", "tom"] 

substring( )

返回一個字符串在開始索引到結束索引之間的一個子集, 或從開始索引直到字符串的末尾的一個子集

語法:字符串.substring(開始下標[,結束下標])

返回值:包含給定字符串的指定部分的新字符串

var str = 'jack,tom,jon,li,ming';
var len = str.substring(5,9);
console.log(len);//tom,
var str = 'jack,tom,jon,li,ming';
var len = str.substring(4);
console.log(len);//,tom,jon,li,ming

小寫轉大寫

toUpperCase( )

返回一個將調用字符串轉換爲大寫形式的值

語法:字符串.toUpperCase( )

返回值:一個表示調用字串轉換成大寫格式的新字符串

var str = 'jack,tom,jon,li,ming';
var len = str.toUpperCase();
console.log(len);//JACK,TOM,JON,LI,MING

大寫轉小寫

toLowerCase( )

返回一個將調用該方法的字符串值轉爲小寫形式

語法:字符串.toLowerCase( )

返回值:一個新的字符串,表示串轉換爲小寫的調用字符

var str = 'jack,tom,jon,li,ming';
var len = str.toUpperCase();
var str1=len.toLowerCase()
console.log(str1);//jack,tom,jon,li,ming

splice、indexOf、lastIndexOf、concat跟數組的用法一樣

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章