JavaScript String 對象常用方法

來源:互聯網
上載者:User
<script type="text/javascript">    //concat() – 將兩個或多個字元的文本組合起來,返回一個新的字串。    var str = "Hello";    var out = str.concat(" World","!");    console.log(str); //Hello    console.log(out); //Hello World!     //charAt() – 返回指定位置的字元。     var str = "HelloString";    var out = str.charAt(1);    console.log(out); //e    //charCodeAt() – 返回在指定的位置的字元的 Unicode 編碼。    var str = "HelloString";    var out = str.charCodeAt(5);    console.log(out); //83    //indexOf(searchvalue,fromindex) – 返回字串中一個子串第一處出現的索引,如果沒有匹配項,返回 -1 。     //fromindex是可選的整數參數。規定在字串中開始檢索的位置。它的合法取值是 0 到 stringObject.length - 1。    //如省略該參數,則將從字串的首字元開始檢索,此時indexOf()跟search()方法類似。    var str = "HelloStringend";    console.log(str.indexOf("e")); //1    console.log(str.indexOf("e",2)); //11            //lastIndexOf(searchvalue,fromindex) – 返回字串中一個子串最後一處出現的索引,如果沒有匹配項,返回 -1 。     //如果在 stringObject 中的 fromindex 位置之前存在 searchvalue,則返回的是出現的最後一個 searchvalue 的位置。    var str = "HelloString";    console.log(str.lastIndexOf("l")); //3    console.log(str.lastIndexOf("l", 1)); //-1    console.log(str.lastIndexOf("l", 2)); //2    console.log(str.lastIndexOf("l", 3)); //3    //substring(start,end) – 返回一個新的字串,包括 start 處的字元,但不包括 end 處的字元,其長度為 end 減 start    //substring是以兩個參數中較小一個作為起始位置,較大的參數作為結束位置。    //注意:如果參數是負數,substring則會將負參數都直接轉換為0,如果僅有一個參數,則從start開始到末尾。     var str = "HelloExample";    console.log(str); //HelloExample    console.log(str.substring(1, 3)); //el    console.log(str.substring(3, 1)); //el    console.log(str.substring(2)); //lloExample    console.log(str.substring(-1)); //HelloExample    console.log(str.substring(-1, -3)); //Null 字元串    console.log(str.substring(-1, 5)); //Hello    //substr(start [,length]) – 返回一個新的字串,從起始索引號提取字串中指定數目的字元。    //如果僅有一個參數,則從start開始到末尾。    //當接收的參數是負數時,substr是將第一個參數與字串長度相加後的結果作為第一個參數    var str = "HelloExample";    console.log(str); //HelloExample    console.log(str.substr(1, 3)); //ell    console.log(str.substr(2, -1)); //Null 字元串    console.log(str.substr(1)); //elloExample    console.log(str.substr(-4, 2)); //mp    console.log(str.substr(-3)); //ple    //stringObject.slice(start,end) 返回一個新的字串,包括 start 處的字元,但不包括 end 處的字元,其長度為 end 減 start    //當接收的參數是負數時,slice會將它字串的長度與對應的負數相加,結果作為參數。如果僅有一個參數,則從start開始到末尾。    var str = "HelloExample";    console.log(str); //HelloExample    console.log(str.slice(1, 3)); //el    console.log(str.slice(2)); //lloExmaple    console.log(str.slice(3, 1)); //Null 字元串    console.log(str.slice(-4, -1)); //mpl    console.log(str.slice(-4, 0)); //Null 字元串    console.log(str.slice(-1, -4)); //Null 字元串    console.log(str.slice(1, -4)); //elloExa    //toLowerCase() – 將整個字串轉成小寫字母。    //toLowerCase() – 將整個字串轉成小寫字母。    var str = "How Are you";    console.log(str.toLowerCase()); //how are you    console.log(str.toUpperCase()); //HOW ARE YOU    /***********************************************/    /********支援Regex的 String 對象的方法*****/    /***********split,match,replace,search**********/    /***********************************************/    //stringObject.split(separator,howmany),返回一個字串數組。該數組是通過在 separator 指定的邊界處將字串 stringObject 分割成子串建立的。返回的數組中的字串不包括 separator 自身。    var str = "How are you doing today";    console.log(str.split(" ")); //["How", "are", "you", "doing", "today"]    console.log(str); //How are you doing today    console.log(str.split("")); //["H", "o", "w", " ", "a", "r", "e", " ", "y", "o", "u", " ", "d", "o", "i", "n", "g", " ", "t", "o", "d", "a", "y"]     console.log(str.split("", 3)); //["H", "o", "w"]    console.log(str.split("a")); //["How ", "re you doing tod", "y"]    console.log(str.split("good")); //["How are you doing today"]    var str = "a_db-c(d+e";    console.log(str.split(/[^a-z]/i)); //["a", "db", "c", "d", "e"]     /** match(searchvalue) 或 match(regexp)檢查一個字串是否匹配一個Regex。返回存放匹配結果的數組。    match() 方法將檢索字串 stringObject,以找到一個或多個與 regexp 匹配的文本。這個方法的行為在很大程度上有賴於 regexp 是否具有標誌 g。    如果 regexp 沒有標誌 g,那麼 match() 方法就只能在 stringObject 中執行一次匹配。如果沒有找到任何匹配的文本, match() 將返回 null。否則,它將返回一個數組,其中存放了與它找到的匹配文本有關的資訊。該數組的第 0 個元素存放的是匹配文本,而其餘的元素存放的是與Regex的子運算式匹配的文本。除了這些常規的數組元素之外,返回的數組還含有兩個對象屬性。index 屬性聲明的是匹配文本的起始字元在 stringObject 中的位置,input 屬性聲明的是對 stringObject 的引用。    如果 regexp 具有標誌 g,則 match() 方法將執行全域檢索,找到 stringObject 中的所有匹配子字串。若沒有找到任何匹配的子串,則返回 null。如果找到了一個或多個匹配子串,則返回一個數組。不過全域匹配返回的數組的內容與前者大不相同,它的數組元素中存放的是 stringObject 中所有的匹配子串,而且也沒有 index 屬性或 input 屬性。    **/    var str = "Hello world! Hello";    console.log(str.match("lo")); //["lo"] { index: 3, input: "Hello world! Hello" }    console.log(str.match("world")); //["world"] { index: 6, input: "Hello world! Hello" }    console.log(str.match("world").index); //6    console.log(str.match(/Hello/g)); //["Hello", "Hello"]    console.log(str.match("World")); //null    var str = "1 plus 2 equal 3";    console.log(str.match(/\d+/g)); //["1", "2", "3"]    //replace() 方法用於在字串中用一些字元替換另一些字元,或替換一個與Regex匹配的子串。    //stringObject.replace(regexp/substr,replacement),返回一個新的字串,是用 replacement 替換了 regexp 的第一次匹配或所有匹配之後得到的。    //replacement 可以是字串,也可以是函數。如果它是字串,那麼每個匹配都將由字串替換。但是 replacement 中的 $ 字元具有特定的含義,它說明從模式比對得到的字串將用於替換。    //  $1、$2、...、$99----與 regexp 中的第 1 到第 99 個子運算式相匹配的文本。    //  $&------------------與 regexp 相匹配的子串。    //  $`------------------位於匹配子串左側的文本。    //  $'------------------位於匹配子串右側的文本。    //  $$------------------直接量符號。    var str = "Visit HangZhou";    console.log(str); //Visit HangZhou    console.log(str.replace(/Hang/g, "Su")); //Visit SuZhou    var str = "1 plus 2 equal 3";    console.log(str); //1 plus 2 equal 3    console.log(str.replace(/(\d)/g, "*"));  //* plus * equal *    var str = "as An angle";    console.log(str.replace(/a/, "b")); //bs An angle    console.log(str.replace(/a/g, "b")); //bs An bngle    console.log(str.replace(/a/gi, "b")); //bs bn angle    var str = "Karl,John";    console.log(str.replace(/(\w+)\s*,\s*(\w+)/, "$2,$1")); //John,Karl    var str = '"ab", "b"';    console.log(str.replace(/"([^"]*)"/g, "'$1'")); //'ab', 'b'     var str = "aaa bbb ccc";    console.log(str.replace(/\b\w+\b/g, function (w) {        return w.substring(0, 1).toUpperCase() + w.substring(1);    })); //Aaa Bbb Ccc     //search() – 執行一個Regex匹配尋找。如果尋找成功,返回字串中匹配的索引值。否則返回 -1 。     //stringObject.search(regexp) 返回stringObject 中第一個與 regexp 相匹配的子串的起始位置。    //此方法跟indexOf類似。此方法會忽略g標識    var str = "Visit HangZhou";    console.log(str) //Visit HangZhou    console.log(str.search(/Hang/)); //6    console.log(str.search(/hang/)); //-1    console.log(str.search(/hang/i)); //6    var str = "1 plus 2 equal 3";    console.log(str) //1 plus 2 equal 3    console.log(str.search(/\d/g)); //0</script>

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.