String 類(lèi)型

slice()、substr()和 substring()

var stringValue = "hello world";
alert(stringValue.slice(3, 7)); //"lo w"
alert(stringValue.substring(3,7)); //"lo w"
alert(stringValue.substr(3, 7)); //"lo worl". 第二個(gè)參數(shù)是返回字符的個(gè)數(shù)

在給 slice()和 substr()傳遞一個(gè)負(fù)值參數(shù)時(shí),它們的行為相同。這是因?yàn)?3 會(huì)被轉(zhuǎn)換為 8(字符串長(zhǎng)度加參數(shù) 11+(-3)=8),實(shí)際上相當(dāng)于調(diào)用了 slice(8)和 substr(8)。但 substring()方法則返回了全部字符串,因?yàn)樗鼘?3 轉(zhuǎn)換成了 0。

indexOf()和 lastIndexOf()。這兩個(gè)方法都是從一個(gè)字符串中搜索給定的子字符串,然后返子字符串的位置(如果沒(méi)有找到該子字符串,則返回-1)。這兩個(gè)方法都可以接收可選的第二個(gè)參數(shù),表示從字符串中的哪個(gè)位置開(kāi)始搜索。

alert(stringValue.indexOf("o", 6)); //7
alert(stringValue.lastIndexOf("o", 6)); //4

trim()方法

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

字符串的模式匹配方法:
match()方法只接受一個(gè)參數(shù),要么是一個(gè)正則表達(dá)式,要么是一個(gè) RegExp 對(duì)象。

var text = "cat, bat, sat, fat";
var pattern = /.at/;
//與 pattern.exec(text)相同
var matches = text.match(pattern);
alert(matches.index); //0
alert(matches[0]); //"cat"
alert(pattern.lastIndex); //0

另一個(gè)用于查找模式的方法是 search()。這個(gè)方法的唯一參數(shù)與 match()方法的參數(shù)相同:由字
符串或 RegExp 對(duì)象指定的一個(gè)正則表達(dá)式。
var text = "cat, bat, sat, fat";
var pos = text.search(/at/);
alert(pos); //1

與操作字符串有關(guān)的最后一個(gè)方法是 localeCompare(),這個(gè)方法比較兩個(gè)字符串,并返回下列
值中的一個(gè):
? 如果字符串在字母表中應(yīng)該排在字符串參數(shù)之前,則返回一個(gè)負(fù)數(shù)(大多數(shù)情況下是-1,具體
的值要視實(shí)現(xiàn)而定);
? 如果字符串等于字符串參數(shù),則返回 0; ? 如果字符串在字母表中應(yīng)該排在字符串參數(shù)之后,則返回一個(gè)正數(shù)(大多數(shù)情況下是 1,具體的
值同樣要視實(shí)現(xiàn)而定)。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容