Javascript數組與字符串經常使用api

javaScript(api學習)

數組有關的api

建立數組

var arr = new Array();//建立新的空數組

數組的增刪改查

var arr = [1,2,3,4,5];
delete arr[2];//arr = [1,2,undefined,4,5];

delete能夠刪除,但只刪除值,位置會被undefined填充,造成稀疏數組java

//查數組最後一位元素
console.log(arr[arr.length-1]);

//經過更改length清空數組
arr.length = 0;

注:api

  1. 更改數組長度的方法在數組索引不爲數字的時候length失效數組

  2. 在數組處在稀疏數組的狀態,咱們經過length操做的時候會出問題函數

indexOf();

做用:可返回數組中某個指定元素的位置,若沒有這個元素就會返回-1學習

var arr = [2,5,6,8,9,10,13];
arr.indexOf(9);//返回4
arr.indexOf(7);//返回-1

push(),pop(),unshift(),shift()

push();在數組的最後添加一個或多個值,返回數組的新的長度編碼

pop();刪除而且返回數組最後一個元素code

unshift();能夠向數組的開頭添加一個或者多個元素,返回新長度排序

shift();刪除數組的第一個元素,而且返回刪除的元素索引

var arr = [5,6,7,8];

var info1 = arr.push(9);//arr=[5,6,7,8,9];
console,log(info1);//打印爲5

var info2 = arr.pop();//arr = [5,6,7,8];
console,log(info2);//打印爲9

var info3 = arr.unshift(4);//arr = [4,5,6,7,8];
console.log(info3);//打印爲5

var info4 = arr.shift();//arr[5,6,7,8];
console.log(info4);//打印爲4

forEach()

做用:用於調用每一個元素,並將元素傳遞給回調函數

參數:forEach(callback);
callback有三個參數:

  1. 第一個表示正在處理的當前元素 (必選)

  2. 第二個參數表示數組中正在處理元素的索引值

  3. 第三個參數表示正在操做的數組

forEach();函數return值爲undefined

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

arr1.forEach(function(item){
    arr2.push(item);
})

console.log(arr2);//[1,2,3,4,5,6]

map();

做用:返回一個新數組,數組中的元素爲原始數組元素調用函數處理後的值

var arr1 = [2,4,6,8];

var info = arr1.map(function(item){
    var num = item * 2;
    return item;
})

console.log(info);//[4,8,12,16]

reduce();

做用:接收一個函數做爲累加器,數組中的每一個值(從左到右)開始縮減,最終計算爲一個值。

這裏的callback的參數多了一個:

accumulator:累加器(必選)

var arr = [2,4,6,8,9,10];

var info = arr.reduce(function(add,item){
    return add + item;
})

console.log(info);//39

filter();(函數過濾器)

做用:建立一個新的數組,新數組中的元素是經過檢查指定數組中符和條件的全部元素

var arr1 = [1,2,3,5,6,8,9,12];

var info = arr1.filter(function(item){
    if(item % 2 === 0){
        return true;
    }
})

console.log(info);//[2,6,8,12]

every();

做用:用於檢測數組,新數組中的全部元素是否都符合條件。

注:

  1. 若是數組中有一個元素不知足,則整個表達式返回false.且剩餘元素不會進行檢測。

  2. 若是全部元素都知足條件,則返回true。

var arr = [2,4,5,6,8,10];
//判斷是否全是偶數
var info = arr.every(function(item){
    if(item % 2 === 0){
        return ;
    }
})

console.log(info);//false

some();

用於檢測數組全部元素是否符和指定條件

注:

  1. 若是有一個知足條件,則表達式返回true,剩餘的元素不會在執行檢測

  2. 若是全部元素知足都知足條件,則返回false。

var arr = [2,4,5,6,8,10];
//判斷是否有奇數
var info = arr.some(function(item){
    if(item % 2 !== 0){
        return;
    }
})

join();

用於把數組中的全部的元素轉換成一個字符串

參數(可選):

指定一個字符串來分割數組的每一個元素。若是須要,將分割轉換爲字符串。
若是缺省該值,數組元素用逗號隔開,若是是空字符串(""),則全部元素之
間都沒有任何字符。
var arr = ['hello','world','!'];

var info = arr.join('');
console.log(info);//helloworld!

reverse();

用於顛倒數組中元素的順序(更改初始數組

var arr = [4,56,87,2,3];

arr.reverse();

console.log(arr);//[3,2,87,56,4]

sort();

對數組進行排序(更改初始數組

參數callback:

  1. 第一個用於比較的元素

  2. 第二個用於比較的元素

var arr = [4,56,87,2,3];

arr.sort(function(arg1,arg2){
    return arg1 - arg2 ;
});

console.log(arr);//[2,3,4,56,87];

concat(arr1,arr2,...);

用於鏈接兩個或多個數組

var arr1 = ['a','b',2];
var arr2 = [1,'cb',45];

var info = arr1.concat(arr2);

console.log(info);

slice();

可從已有的數組中返回選定的元素

兩個參數:

  1. began:開始的索引

  2. end:結束的索引

tip: 包括開始不包括結束

var arr = [1,3,4,5,6,7];

var info = arr.slice(1,3);
console.log(info);//[3,4];

splice();

用於添加或刪除數組中的元素(會改變原數組

內含三個參數:

  1. 第一個是開始的索引

  2. 第二個是選中元素的個數

  3. 第三個是添加的元素

var arr = [1,3,4,5,6,7];

var info = arr.splice(1,1,'a');

console.log(info);//3
console.log(arr);//[1,'a',4,5,6,7]

isArray();

判斷是否是數組

var arr = [1,3,4,5,6,7];

var info = Array.isArray(arr);

console.log(info);//true

String字符串api

charAt();

可返回指定位置的字符

var str = 'hello world';

var info = str.charAt(2);
console.log(info);//l

charCodeAt();

可返回指定位置的字符的Unicode編碼

var str = 'hello world';

var info = str.charCodeAt(2);

console.log(info);//108

concat();

將多個字符串拼接

var str1 = 'hello';
var str2 = 'world';
var st3 = '!';

var info = str1.concat(str2,str3);

console.log(info);//helloworld!

fromCharCode();

根據Unicode表的值建立一個字符

var str = String.fromCharCode(108);
console.log(str);

indexOf();

能夠返回一個字符在字符串中首次出現的位置

var str = 'hello world';

var info = str.indexOf('l');
console.log(info);//2

lastIndexOf();

返回一個字符在字符串最後出現的位置

var str = 'hello world';

var info = str.lastIndexOf('l');
console.log(info);//9

match();

能夠在字符串中檢索指定的值(能夠和正則配合

var str = 'hello world';

var info = str.match('o');
console.log(info);//Array[0:'o',index:4,input:'hello world',length:1]

replace();

能夠在字符串當中使用一些字符替換另外一些字符(能夠和正則搭配

var str = 'hello world';

var info = str.replace('lo','**');
console.log(info);//hel** world

用於在字符串當中檢索查找指定的字符(能夠和正則配合

var str = 'hello world';

var info = str.search('o');

console.log(info);//4

slice();

能夠從字符串中截取指定的字符

var str = 'hello world';

var info = str.slice(1,3);

console.log(info);//el

split();

能夠把字符串分割成字符串

參數:

  1. 第一個參數表示控制的切割符

  2. 第二個參數表示數組裏面的長度(能夠存入幾個數據)

var str = 'hello world !';

var info = str.split(' ',2);

console.log(info);//['hello','world'];

substr();

能夠從字符串當中抽取從開始位置指定的個數的字符

參數:

  1. 第一個是截取位置

  2. 第二個是截取長度

var str = 'hello world';

var info = str.substr(2,2);

console.log(info);//ll

substring();

從開始和結束的中間截取字符串。

var str = 'hello world';

var info = str.substring(1,3);

console.log(info);//el

toLowerCase();

把字符串中的字符小寫

var str = 'HELLO WOLRD';

var info = str.toLowerCase();

console.log(info);//hello wolrd;

toUpperCase();

把字符串大寫

var str = 'hello world';

var info = str.toUpperCase();

console.log(info);//HELLO WORLD
相關文章
相關標籤/搜索