茄子在线看片免费人成视频,午夜福利精品a在线观看,国产高清自产拍在线观看,久久综合久久狠狠综合

    <s id="ddbnn"></s>
  • <sub id="ddbnn"><ol id="ddbnn"></ol></sub>

  • <legend id="ddbnn"></legend><s id="ddbnn"></s>

    深入探討JavaScript String對象
    來源:易賢網(wǎng) 閱讀:1027 次 日期:2015-03-11 11:56:05
    溫馨提示:易賢網(wǎng)小編為您整理了“深入探討JavaScript String對象”,方便廣大網(wǎng)友查閱!

    本文向大家詳細(xì)的介紹了javascript中的String對象的簡介、定義方式、實例屬性和實例方法,非常的細(xì)致全面,這里推薦給大家,希望對大家能夠有所幫助。

    String 字符串對象

    1. 介紹

    String 對象,對字符串進(jìn)行操作,如:截取一段子串、查找字符串/字符、轉(zhuǎn)換大小寫等等。

    2. 定義方式

    2.1 new String(Value) 構(gòu)造函數(shù):返回一個內(nèi)容為Value的String對象

    參數(shù):

    ①value {String} :字符串

    返回值:

    {String對象} 返回一個內(nèi)容為Value的String對象

    示例:

    代碼如下:

    var demoStr = new String('abc');

    console.log(typeof demoStr); // => object

    console.log(demoStr); // => abc

    2.2 直接賦值(推薦)

    示例:

    代碼如下:

    var demoStr = 'abc';

    console.log(typeof demoStr); // string

    console.log(demoStr); // => abc

    3. 實例屬性

    3.1 length :返回字符串中的字符數(shù)

    代碼如下:

    var s = 'abc';

    console.log(s.length); // => 3

    console.log('新年快樂'.length); // => 4 :一個中文字符也計算為1個數(shù)量

    console.log(''.length); // => 0 :空字符串返回0

    4. 實例方法

    注意:字符串的實例方法不會改變字符串的本身,只返回操作后的結(jié)果。

    4.1 charAt(index) :返回一個字符串中指定位置的字符,編號從0開始,若傳入個不存在的數(shù)值,就返回空字符串

    參數(shù):

    ①index {int} :位置索引,從0開始計算

    返回值:

    {string} 返回一個字符串中指定位置的字符;若傳入個不存在的位置數(shù)值,返回一個空字符串

    示例:

    代碼如下:

    var s = 'abc';

    console.log(s.charAt(1)); // => b :返回位置為1的字符

    console.log(s); // => 不影響原來的數(shù)組

    console.log(s.charAt(5)); // => '' :獲取一個不存在位置的字符,返回一個長度為0的空字符串

    4.2 charCodeAt(index) :返回一個字符串中指定位置字符的Unicode編碼

    參數(shù):

    ①index {int} :位置索引,從0開始計算

    返回值:

    {number} 返回一個字符串中指定位置字符的Unicode編碼;若傳入個不存在的位置數(shù)值,返回NaN

    示例:

    代碼如下:

    var s = 'abc';

    console.log(s.charCodeAt(0)); // => 98 :字符b的Unicode編碼

    console.log(s.charCodeAt(5)); // => NaN :獲取一個不存在位置的字符,返回NaN

    4.3 concat(value1,value2 ... valueN) :連接一個或多個字符串,并返回連接后的字符串

    參數(shù):

    ①value1,value2 ... valueN {string} :一個或多個字符串

    返回值:

    {string} 返回連接后的字符串

    示例:

    代碼如下:

    var s = 'abc';

    console.log(s.concat('d')); // => abcd

    console.log(s); // => abc :不影響原先的字符串

    console.log(s.concat('d', 'e')); // => abcde

    4.4 indexOf(value , |startPosition ) :在實例中從前往后查找一個字符串或字符,并返回找到的位置(從0開始計數(shù))。若未找到,返回-1

    參數(shù):

    ①value {string} :查找的字符串

    ②startPosition {int} 可選 :開始查找的起始位置,默認(rèn)從位置0開始查找

    返回值:

    {int} 返回找到的位置(從0開始計數(shù))。若未找到,返回-1

    示例:

    代碼如下:

    var s = 'abc';

    console.log(s.indexOf('b')); // => 1

    console.log(s.indexOf('d')); // => -1 :未找到

    console.log(s.indexOf('b', 2)); // => -1 :從位置2(第3個字符處)開始查找

    4.5 lastIndexOf(value , |startPosition ) :在實例中從后往前開始查找一個字符串或字符,并返回找到的位置(從0開始計數(shù))。若未找到,返回-1

    參數(shù):

    ①value {string} :查找的字符串

    ②startPosition {int} 可選 :開始查找的起始位置,默認(rèn)從最后開始查找

    返回值:

    {int} 返回找到的位置(從0開始計數(shù))。若未找到,返回-1

    示例:

    代碼如下:

    var s = 'abcabc';

    console.log(s.lastIndexOf('a')); // => 3 :從后往前查找

    console.log(s.lastIndexOf('d')); // => -1 :未找到返回-1

    console.log(s.lastIndexOf('a', 2)); // => 0 :從位置2(第3個字符處)開始往前查找

    4.6 localeCompare(value) :實例與參數(shù)進(jìn)行比較,返回比較結(jié)果

    參數(shù):

    ①value {string} :需比較的字符串

    返回值:

    0 :實例比參數(shù)大

    1 :實例與參數(shù)相等

      -1 :實例比參數(shù)小

    示例:

    代碼如下:

    var s='abc';

    console.log(s.localeCompare('ab')); // => 1 :實例比參數(shù)大

    console.log(s.localeCompare('abc')); // => 0 :實例與參數(shù)相等

    console.log(s.localeCompare('abd')); // => -1 :實例比參數(shù)小

    4.7 match(regexp) :使用正則表達(dá)式進(jìn)行匹配查找

    參數(shù):

    ①regexp {regexp} :正則表達(dá)式,eg:/\d+/

    返回值:

    根據(jù)正則表達(dá)式是否帶屬性'g',返回不同的結(jié)果;若沒匹配,就返回 {null}:

    ①正則表達(dá)式不帶屬性'g',執(zhí)行一次匹配,返回{單個匹配}結(jié)果對象,對象包含以下屬性:

    數(shù)組序號:表示匹配結(jié)果,0為匹配文本,1為從做到右第1個圓括號匹配結(jié)果,2為第二個圓括號,依此類推

    index屬性:表示匹配文本在匹配源的開始位置

    input屬性:表示匹配源

    ②正則表達(dá)式帶屬性'g',執(zhí)行全局匹配,找到字符串所有匹配對象,返回一個{字符串?dāng)?shù)組}:數(shù)組元素包含string中的每一個匹配對象,不包含正則表達(dá)式括號內(nèi)的字串,也不提供index和input屬性。

    示例:

    代碼如下:

    // 1.單個匹配

    var s = 'a1b2c3d4';

    var mc = s.match(/\d+/); // => 獲取第一個正則匹配的結(jié)果

    if (mc != null) {

    console.log(mc.index); // => 1 :匹配結(jié)果在匹配源的起始位置

    console.log(mc.input) // => a1b2c3d4 :匹配源

    console.log(mc[0]); // => 1 :獲取匹配到的結(jié)果

    }

    // 2.全局匹配

    var mcArray = s.match(/\d+/g); // => 獲取全部正則匹配的數(shù)字

    if (mcArray != null) {

    for (var i = 0,len=mcArray.length; i < len; i++) {

    var mc=mcArray[i];

    console.log(mc); // => 1,2,3,4 :獲取匹配到的結(jié)果

    }

    }

    // 3.帶括號的匹配

    s = 'a1b2c3d4';

    mc = s.match(/[a-z]([1-9])/); // => 獲取第一個正則匹配的結(jié)果

    if (mc != null) {

    console.log(mc.index); // => 0 :匹配結(jié)果在匹配源的起始位置

    console.log(mc.input) // => a1b2c3d4 :匹配源

    console.log(mc[0]); // => a1 :序號0表示匹配到的結(jié)果

    console.log(mc[1]); // => 1 :序號1表示第一個括號內(nèi)的子匹配結(jié)果

    }

    4.8 replace(regexp, replaceStr) :替換正則表達(dá)式匹配的子串,并返回替換后的字符串

    參數(shù):

    ①regexp {regexp} :正則表達(dá)式。eg:/\d+/

    ②replaceStr {string | function} :

    1)若是字符串,表示替換的字符串,匹配到字串都替換成此字符串;

    字符串中的$字符有特殊的含義:

    $1,$2 ... $99 :表示①參從左到右圓括號的匹配子項

    $& :表示整個①參匹配的子項

    $$ :美元符號

    2)若是函數(shù),表示每個匹配結(jié)果都調(diào)用此函數(shù),函數(shù)的唯一參數(shù)為匹配結(jié)果,并返回一個替換結(jié)果。

    返回值:

    {string} 返回一個替換后的字符串

    示例:

    代碼如下:

    var oldStr = 'a1b2c3d4';

    // 1.正則匹配到【所有】數(shù)字,替換成:','逗號

    var newStr = oldStr.replace(/\d+/g, ',');

    console.log(newStr); // => a,b,c,d,

    // 2.正則匹配到【所有】數(shù)字,替換成:匹配結(jié)果 + ','逗號

    newStr = oldStr.replace(/\d+/g, '$&,');

    console.log(newStr); // => a1,b2,c3,d4,

    // 3.正則匹配到【所有】數(shù)字,每個匹配結(jié)果都調(diào)用函數(shù),并返回替換后的結(jié)果

    newStr = oldStr.replace(/\d+/g, function (word) {

    if (word % 2 == 0) {

    return '偶';

    }

    return '奇';

    });

    console.log(newStr); // => a奇b偶c奇d偶

    4.9 search(regexp) :返回查找正則表達(dá)式第一個匹配的位置

    參數(shù):

    ①regexp {regexp} :正則表達(dá)式。eg:/\d+/

    返回值:

    {int} 返回第一個匹配的結(jié)果的位置;若沒找到匹配結(jié)果返回-1

    示例:

    代碼如下:

    console.log( 'abcd'.search(/\d+/) ); // => -1 :沒有找到數(shù)字

    console.log( 'abcd1234'.search(/\d+/) ); // => 4 :位置序號為4,返回第一個數(shù)字的位置

    4.10 slice(start, |end):返回從字符串start位置到end前一個位置的子串

    參數(shù):

    ①start {int} :子串提取的開始位置索引(包括此位置的字符)。

    若數(shù)字為負(fù),表示從字符串尾部開始計算。如:-1表示倒數(shù)一個字符串,-2表示倒數(shù)第二個字符。

    ②end {int} 可選:子串提取的結(jié)束位置索引(不包括此位置的字符)。

    若數(shù)字為負(fù),表示從字符串尾部開始計算。如:-1表示倒數(shù)一個字符串,-2表示倒數(shù)第二個字符。

    若省略此參數(shù),返回從start位置到結(jié)束的所有字符。

    注意:

    子串的提取順序是從左到有,若start索引位置大于end索引位置,將返回一個空字符串。

    返回值:

    {string} 返回從字符串start位置到end前一個位置的子串。

    示例:

    代碼如下:

    var s = 'abcdefg';

    console.log( s.slice(1) ); // bcdefg :省略end參數(shù),結(jié)束位置為末尾

    console.log( s.slice(1, 3) ); // bc :返回從位置序號1到位置序號2(end前一個位置)的子串

    console.log( s.slice(-3) ); // efg :返回從倒數(shù)第三個開始到末尾的所有字符

    console.log( s.slice(-3, -1) ); // ef :返回從倒數(shù)第三個開始到第二個(end前一個位置)的所有字符

    4.11 split(delimiter, |arrayLength) :將字符串按照某種分隔符切分成一個由字符串組成的數(shù)組并返回

    參數(shù):

    ①delimiter {regexp | string} :指定的分隔符,可以為正則表達(dá)式或字符串。

    ②arrayLength {int} 可選 :分割數(shù)組的長度。若省略,返回所有分割的子串。

    注意:

    若分隔符在字符串的第一個或最后一個,將添加一個空字符串到返回的數(shù)組。

    返回值:

    { string[] } 返回一個由字符串組成的數(shù)組。

    示例:

    代碼如下:

    console.log( 'a,b,c,d,e'.split(',') ); // => ["a", "b", "c", "d", "e"]

    console.log( ',a,b,c,d,e,'.split(',') ); // => ["", "a", "b", "c", "d", "e", ""] :分隔符在最前或最后面,會添加一個空字符串

    console.log( 'a,b,c,d,e'.split(',',3) ); // => ["a", "b", "c"] :返回前3個分割的子串

    console.log( 'a1b2c3d4e'.split(/\d/) ); // => ["a", "b", "c", "d", "e"] :將數(shù)字來做為分隔符

    4.12 substr(start, |wordLength):返回從字符串start位置開始計算到wordLength個長度的子串

    參數(shù):

    ①start {int} :子串提取的開始位置索引(包括此位置的字符)。

    若數(shù)字為負(fù),表示從字符串尾部開始計算。如:-1表示倒數(shù)一個字符串,-2表示倒數(shù)第二個字符。

    ②wordLength {int} 可選 :提取字符的長度。若省略此參數(shù),返回從start位置到結(jié)束的所有字符。

    返回值:

    {string} 返回提取的字符串

    示例:

    代碼如下:

    ar s = 'abcdefg';

    onsole.log( s.substr(0) ); // => abcdefg :省略第二個參數(shù),返回從位置序號0開始,一直到最后的字符

    onsole.log( s.substr(0, 3) ); // => abc :返回從位置序號0開始,計數(shù)3個字符

    onsole.log( s.substr(2, 4) ); // => cdef :返回從位置序號2開始,計數(shù)4個字符

    onsole.log( s.substr(-2, 3) ); // fg :返回從倒數(shù)第二個字符串開始,計數(shù)3個(超過字符長度,就只返回可統(tǒng)計的字符)

    4.13 substring(start, |end) :返回從字符串start位置到end前一個位置的子串

    參數(shù):

    ①start {int} :子串提取的開始位置索引(包括此位置的字符)。數(shù)字不能為負(fù)數(shù),若為負(fù)數(shù)按0來處理

    ②end {int} 可選:子串提取的結(jié)束位置索引(不包括此位置的字符)。數(shù)字不能為負(fù)數(shù),若為負(fù)數(shù)按0來處理

    返回值:

    {string} 返回從字符串start位置到end前一個位置的子串。

    示例:

    代碼如下:

    var s = 'abcdefg';

    console.log( s.substring(0) ); // => abcdefg :省略end參數(shù),返回從位置序號0開始,一直到最后的字符

    console.log( s.substring(0, 3) ); // => abc :返回從位置序號0開始到位置序號2(②參的前一個)的字符

    console.log( s.substring(2, 4) ); // => cd :返回從位置序號2開始到位置序號3(②參的前一個)的字符

    console.log( s.substring(-3, 3) ); // abc :參數(shù)若為負(fù),就按數(shù)字0來處理,所以此參數(shù)實際返回位置序號0到位置序號3的字符

    4.14 toUpperCase() :將字符串轉(zhuǎn)換為大寫并返回

    4.15 toUpperCase() :將字符串轉(zhuǎn)換為小寫并返回

    4.16 trim() :移除字符串開頭和結(jié)尾處的空白字符并返回

    以上就是本文的全部內(nèi)容了,希望通過本文,大家對javascript中的String對象能有新的認(rèn)識。

    更多信息請查看IT技術(shù)專欄

    更多信息請查看腳本欄目
    易賢網(wǎng)手機(jī)網(wǎng)站地址:深入探討JavaScript String對象
    由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

    2026上岸·考公考編培訓(xùn)報班

    • 報班類型
    • 姓名
    • 手機(jī)號
    • 驗證碼
    關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機(jī)站點 | 投訴建議
    工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
    云南網(wǎng)警備案專用圖標(biāo)
    聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
    云南網(wǎng)警報警專用圖標(biāo)