欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript中String對象的方法介紹

 更新時間:2017年01月04日 15:19:26   作者:答士  
本文主要對JavaScript中String對象的方法進行介紹。具有一定的參考價值,下面跟著小編一起來看下吧

1.字符方法

1.1 charAt() 方法,返回字符串中指定位置的字符。

var question = "Do you like JavaScript?";
alert(question.charAt(5)); //"u"

字符串 "Do you like JavaScript?" 的長度為23,即位置從0到22。指定位置5處的字符是"u"。

1.2 charCodeAt() 方法,返回字符串中指定位置的字符編碼。

var question = "Do you like JavaScript?";
alert(question.charCodeAt(5)); //"117"

位置5處的字符"u"的字符編碼是"117"。

charAt() 和 charCodeAt() 都是針對單個字符進行操作的方法。

2.字符串操作方法

這個小節(jié)的字符串操作方法是關(guān)于創(chuàng)建新字符串的方法。這些方法包括 concat()、slice()、substring()、substr()。

concat() 是通過拼接的方式創(chuàng)建新的字符串,slice()、substring()、substr() 是通過提取的方式創(chuàng)建新的字符串。

這四種方法不會改變原始字符串。

2.1 concat() 方法,將一個或多個字符串拼接起來,返回新的字符串。不改變原始字符串。

concat() 方法可以接受一個或多個參數(shù)。

concat() 方法接受一個參數(shù)。

var love = "I love ";
var result = love.concat("you");
alert(result); //"I love you"
alert(love); //"I love "

love 調(diào)用了 concat() 方法,返回 "I love you",love 的值并沒有改變。

concat() 方法接受多個參數(shù)。

var love = "I love ";
var result = love.concat("you"," very"," much","!");
alert(result); //"I love you very much!"
alert(love); //"I love "

不過,在實踐中,通常用 + 號操作符將字符串拼接在一起。

2.2 slice()、substring()、substr() 方法,通過提取原始字符串的部分或全部來創(chuàng)建新的字符串,返回創(chuàng)建后的新字符串,不改變原始字符串。

slice()、substring()、substr() 方法可以接受一個或兩個參數(shù),這些參數(shù)為數(shù)字,可以是正值參數(shù),也可以是負值參數(shù)。

2.2.1 參數(shù)為正值時

傳入兩個參數(shù)的情況

對于 slice() 、substring() ,第一個參數(shù)為提取的開始位置(包括開始位置的字符),第二個參數(shù)為提取的結(jié)束位置(不包括結(jié)束位置的字符)。

對于 substr(),第一個參數(shù)為提取的開始位置(包括開始位置的字符),第二個參數(shù)為提取的字符個數(shù)。

 var hello = "I love JavaScript!";
 alert(hello.slice(7,11)); //"Java"
 alert(hello.substring(7,11)); //"Java"
 alert(hello.substr(7,11)); //"JavaScript!"

字符串 "I love JavaScript!" 長度為18,即位置從0到17。第7位的字符是 "J",第11位的字符是 "S"。

slice()、substring() 提取的子字符串是從第7位開始(包括第7位的 "J")到第11位結(jié)束(不包括第11位的 "S"),于是用這兩個方法提取的新字符串是 "Java"。而 substr() 則是從第7位 "J" 開始(包括第7位的 "J"),提取11個字符,最后提取的新字符串為 "JavaScript!"。

傳入一個參數(shù)的情況

參數(shù)為正值,傳入一個參數(shù)時,slice()、substring()、substr() 方法提取原理相同,即從參數(shù)的位置開始提取(包括開始位置的字符),一直提取到原始字符串的最后一個字符(包括最后一個字符)。

var hello = "I love JavaScript!";
alert(hello.slice(7)); //"JavaScript!" 
alert(hello.substring(7)); //"JavaScript!"
alert(hello.substr(7)); //"JavaScript!"

傳入了一個參數(shù)7,即從第7位開始(包括第7位的 "J"),一直提取到原始字符串的最后一位(包括最后一位的 "!")。于是,只有一個參數(shù),且參數(shù)為正值時,slice()、substring()、substr() 方法返回的新字符串相同。

2.2.2 參數(shù)為負值時,不管是一個參數(shù)還是兩個參數(shù)

slice() 方法會將傳入的所有負值與字符串長度相加。

substring() 方法會將傳入的所有負值都轉(zhuǎn)化為0。

substr() 方法,若第一個參數(shù)是負值,則將負值與字符串長度相加;若第二個參數(shù)是負值,則將其轉(zhuǎn)化為0。

var hello = "I love JavaScript!";
alert(hello.slice(-11));  //"JavaScript!" 
alert(hello.substring(-11)); //"I love JavaScript!"
alert(hello.substr(-11));  //"JavaScript!"
alert(hello.slice(-11,-9)); //"Ja" 
alert(hello.substring(-11,-9)); //""(空字符串)
alert(hello.substr(-11,-9)); //""(空字符串)

當傳入一個負值參數(shù)-1時,

slice() 將負值參數(shù)與字符串長度相加,前面提到過,字符串 "I love JavaScript!" 的長度為18,于是 slice(-11) 即相當于 slice(7),即從第7位開始提取,最后提取的子字符串為 "JavaScript!";

substring() 會將負值轉(zhuǎn)化為0,substring(-11) 相當于 substring(0),即從第0位開始提取,最后提取的子字符串為 "I love JavaScript!";

substr() 將負值參數(shù)與字符串長度相加,substr(-11) 相當于 substr(7),即從第7位開始提取,最后提取的子字符串為 "JavaScript!"。

當傳入?yún)?shù)-11,-9時,

slice() 將所有負值參數(shù)與字符串長度相加,slice(-11,-9) 相當于 slice(7,9),最后提取的子字符串為 "Ja";

substring() 會將所有負值轉(zhuǎn)化為0,substring(-11,-9) 相當于 substring(0,0),即從第0位開始,第0位結(jié)束,即提取的是空字符串;

substr() 將第一個參數(shù)-11與字符串長度相加,將第二個參數(shù)-9轉(zhuǎn)化為0,substr(-11,-9) 相當于 substr(7,0),即從第7位開始,提取0個字符串,即也是空字符串。

3.字符串位置方法

indexOf() 方法和 lastIndexOf() 方法,返回要檢索的子字符串在原始字符串中第一次出現(xiàn)的位置。

indexOf() 方法從原始字符串開頭向后檢索子字符串,lastIndexOf() 方法從原始字符串末尾向前檢索子字符串。

indexOf() 方法和 lastIndexOf() 方法接受一個必選參數(shù)。

var test = "balala balala balala";
alert(test.indexOf("a")); //"1"
alert(test.lastIndexOf("a")); //"19"

indexOf() 從開始位置向后檢索子字符串 "a","a" 第一次出現(xiàn)的位置是1;lastIndexOf() 從末尾位置向前檢索子字符串 "a","a" 第一次出現(xiàn)的位置是19。

如果沒有找到要檢索的子字符串,則這兩個方法都會返回-1。

var test = "balala balala balala";
alert(test.indexOf("h")); //"-1"
alert(test.lastIndexOf("h")); //"-1"

indexOf() 方法和 lastIndexOf() 方法接受第二個可選參數(shù),表示從原始字符串的哪個位置開始。

var test = "balala balala balala";
alert(test.indexOf("a",7)); //"8"
alert(test.lastIndexOf("a",7)); //"5"

indexOf("a",7) 從第7位向后檢索子字符串 "a","a" 第一次出現(xiàn)的位置是8;lastIndexOf("a",7) 從第7位向前檢索子字符串 "a","a" 第一次出現(xiàn)的位置是5。

4.字符串大小寫換換方法

ECMAScript  中涉及字符串大小寫轉(zhuǎn)換的方法有4個:toUpperCase()、toLocaleUpperCase()、toLowerCase()、toLocaleLowerCase()。

toUpperCase() 和 toLowerCase() 是典型的方法,toLocaleUpperCase() 和 toLocaleLowerCase() 是針對當?shù)氐貐^(qū)的方法,以保證字符串正確的轉(zhuǎn)換。

在不知道自己的代碼在哪種語言環(huán)境中運行時,使用針對當?shù)氐貐^(qū)的方法更穩(wěn)妥一些。

var test = "balala balala balala";
 alert(test.toLocaleUpperCase()); //"BALALA BALALA BALALA"
 alert(test.toUpperCase());  //"BALALA BALALA BALALA"
 alert(test.toLocaleLowerCase()); //"balala balala balala"
 alert(test.toLowerCase());  //"balala balala balala"

5.trim()方法

trim() 方法會創(chuàng)建原始字符串的副本,并刪除前置和后綴的所有空格,然后返回結(jié)果,不會改變原始字符串。

 var test = " balala balala balala ";
 var test1 = test.trim();
 alert(test1); //"balala balala balala"
 alert(test); // " balala balala balala "
 alert(test1.length); //"20"
 alert(test.length); //"28"

以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時也希望多多支持腳本之家!

相關(guān)文章

最新評論