javascript中數組(Array)對象和字串(String)對象的常用方法總結_javascript技巧

來源:互聯網
上載者:User

本文執行個體總結了javascript中數組(Array)對象和字串(String)對象的常用方法。分享給大家供大家參考,具體如下:

綜述:筆者經常將數組的方法和字串的方法混淆,這裡寫篇日誌,做個區分

1.字串對象

String是JavaScript中的五種基本類型之一。

(1)字串對象的建立

例1:

var str="Hello world";

或者

var str=new String("Hello world")

(2)charAt()方法

charAt()方法用於返回指定位置的字串,比如我們想返回str字串中,第二個字元,則可以寫成charAt(1),因為字串的下標也是從0開始,因此我們返回了第二個字元e;

例2:

var str="Hello world"; alert(str.charAt(1))//輸出e

(3)indexOf(注意O要大寫)

indexOf()方法,可返回某個指定的字串值在字串中首次出現的位置。

例3:

var str="Hello world";alert(str.indexOf('e'))//輸出1

indexOf()方法還可以有第二個參數規定字串開始檢索的位置

(4)split()方法

split()方法,可以按規則分割字串。比如:

例4:

var x="86-029-19201920";alert(x.split(-))//輸出 86 029 19201920

split()方法還可以有第二個參數,表示分割的次數,如果省略,預設分割次數不限

(5)substring()方法

substring()方法,可以提取字串,改方法有兩個參數,第一個參數表示起始位置,第二個參數表示終止位置,如果省略第二個參數,預設提取到字串的結尾。

例5:

var x="Hello world";alert(x.substring(0,4));//輸出Hello

(6)substr()方法

substr()方法,也可以用於提取字串,不同的是該方法的兩個參數,第一個參數表示起始位置,第二個參數表示提出字串的個數。

例6:

var x="Hello world";alert(x.substr(0,5));//同樣輸出Hello

2.數組對象(Array)

(1)數組對象的建立

例1:

var arr=new Array(10) ;var arr=[1,2,3];var arr=new Array(1,2,3);var arr=[];

數組建立的方法一般有這麼幾種,其中var arr=new Array(1,2,3)這種方式較為少見。

(2)concat()方法

例2:

var x=[1,2,3];var y=x.concat(4,5);alert(y);//輸出y為1,2,3,4,5

concat() 方法用於串連兩個或多個數組。此方法返回一個新數組,不改變原來的數組。

(3)join()方法

例3:

var x=[1,2,3]; alert(x.join("-"));//輸出的位1-2-3

join()方法用於把數組中的所有元素放入一個字串。元素是通過指定的分隔字元進行分隔的。

(4)reverse()方法

數組反轉,不會產生新的數組

例4:

var x=[1,2,3];alert(x.reverse());//輸出的位3,2,1

(5)slice()方法

slice() 方法可從已有的數組中返回選定的元素。slice方法也有2個參數,第一個參數表示開始位置,第二個參數表示結束位置。

(6)splice()方法

splice()方法用於在數組中插入或刪除元素的通用方法,不同於concat()和slice()方法,splice()會修改調用的數組。

例6:

var a=[1,2,3,4,5,6,7,8];a.splice(4);//返回[5,6,7,8],a數組變成了[1,2,3,4]a.splice(1,2);//返回[2,3],a數組變成了[1,4]a.splice(1,1);//返回了[4],a數組變成了[1]

註:splice()的第一個參數指定了插入的起始位置,第二個參數指定了應該從數組中插入或刪除的元素的個數

splice()返回一個由刪除元素組成的數組。

(7)push()和pop()方法

push()和pop()方法允許數組當做棧來使用,push()表示在數組的尾部添加一個或者多個元素,pop()方法則相反。

(8)shift()和unshift()方法

shift()和unshift()方法,非常類似於push()和pop()方法,不同的是前者是在數組的頭部而非尾部進行插入和刪除操作。

(9)sort()方法

sort()方法使數組中的元素按照一定的順序排列。

例9:

var x=[1,2,13,113],alert(x.sort())//預設定序為按字母表排序,因為輸出 1,113,13,2

如果要使得數組從小到大排序,則為

x.sort(function(a,b){return a-b});

ES5新增的方法

ES5中的數組方法,首先大部分的方法第一個參數接收一個函數,並且對於數組的每個元素調用一次該函數,函數中的參數為第一個參數為數組元素,第二個參數為元素的索引,第三個參數為數組本身

(10)foreach()方法

從頭到尾遍曆數組,為每個數組調用指定的函數

例10:

var x=[1,2,3,4,5];alert(x.foreach(function(x,i,a){ a[i]=x*x}))//返回[1,4,9,16,25]

ES5中還有類似map,filter等方法不一一討論

3.數組對象和字串對象方法的互用

我們學過了call和apply函數就能實現字串方法和數組對象方法的互用

比如:我們想在字串對象中使用數組對象的方法,可以這樣實現:

例:

var x="Hello World";var y=Array.prototype.slice.call(x);

通過call方法,將x字串對象轉為了y數組對象!!!同理也可以將數組對象轉化為字串對象,

就不在累贅舉例了!~

更多關於JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript數組操作技巧總結》、《JavaScript遍曆演算法與技巧總結》、《JavaScript數學運算用法總結》、《JavaScript資料結構與演算法技巧總結》、《JavaScript切換特效與技巧總結》、《JavaScript尋找演算法技巧總結》、《JavaScript動畫特效與技巧匯總》及《JavaScript錯誤與調試技巧總結》

希望本文所述對大家JavaScript程式設計有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.