JavaScript字串常用的方法,javascript字串

來源:互聯網
上載者:User

JavaScript字串常用的方法,javascript字串

擷取類:

1)動態方法:

charAt : 擷取字串指定位置上的字元。(參數:一個,指定要擷取的字元位置)

1,不接受負數,如果為負數,會返回一個Null 字元串。

2,如果不給參數,預設是擷取第0位置上的字元。

3,只接收一個參數。

charCodeAt : 擷取字串中指定位置上字元的Unicode編碼(參數: 一個,指定要擷取字元編碼的字元位置)

1,任何字元都有一個唯一的字元編碼。

2,只接收一個參數。

  常用:

    數字 : 48 ~ 57

    底線 : 95

    空格 : 32

    定位字元 : 9

    小寫字母 :97 ~ 122

    大寫字母 : 65 ~ 90

2)靜態方法:

fromCharCode : 根據指定的字元編碼返回對應的字元。(參數: 任意多個)

1,可以接收多個參數。

2,寫法是固定的(靜態方法):String.fromCharCode(); //字元編碼有效範圍 : 0 ~ 65535 String是字串的對象

var str = '我是字串';alert( str.charAt( ) ); //'' 如果本身長度只有,卻找str.charAt() 找不到也是Null 字元串'',~str.length-是合法範圍。alert( str.charAt( ) ); //'我' 預設不寫是,找到第一個字元alert( str.charAt() ); // '字'alert( ''.charAt( ) ); //alert( ''.charAt(,) ); //alert( str.charCodeAt( ) );// unicode編碼alert( ''.charCodeAt() ); // alert(String.fromCharCode( ,)); //'字味' 根據編碼轉換成字元(靜態方法)多個字元用 , 隔開 

尋找類:

indexOf : 尋找指定的子字串在字串中第一次出現的位置。(第一個參數,指定要尋找的子字串;第二個參數指定開始尋找的位置。)

1,從前往後尋找,預設從第0位置開始。

2,如果找到了,就返回第一次被尋找到的位置,如果沒有找到,就返回 -1。

3,如果第二個參數為負數,預設當成0來處理

lastIndexOf : 尋找指定的子字串在字串中最後一次出現的位置。(第一個參數,指定要尋找的子字串;第二個參數指定開始尋找的位置。)

1,從後往前尋找,預設從第 length - 1 位置開始。

2,如果找到了,就返回第一次被尋找到的位置,如果沒有找到,就返回 -1。

var str = 'www.baidu.com/';alert(str.indexOf('bai')); // 從左往右找找到一個就返回不會再往右找了alert(str.indexOf('m',)) // 從第位開始向右找alert(str.indexOf('X')) //- 不存在的話結果是 - 表示沒找到alert(str.lastIndexOf('ww')); // 

截取類:

substring : 提取指定範圍的一段子字串。(第一個參數,指定要提取的開始位置;第二個參數,指定要提取的結束位置。)

1,提取範圍包括開始位置,但是不包括結束位置。

2,可以省略第二個參數,表示從開始位置提取到字串結束

3,在提取之前會先比較兩個參數的大小,然後按從小到大的順序調整參數位置,再提取。

4,所有的非法參數都會自動轉化成0.

5,如果不給參數,預設直接返回整個字串。

slice : 提取指定範圍的一段子字串。(第一個參數,指定要提取的開始位置;第二個參數,指定要提取的結束位置。)

1,提取範圍包括開始位置,但是不包括結束位置。

2,可以省略第二個參數,表示從開始位置提取到字串結束

3,不會比較兩個參數的位置,更不會調整位置的位置

4,參數可以是正數,也可以是負數,其它所有非法參數都會轉換成0。

5,負數表示從字串的後面往前數字元位置,最一個字元的位置是 -1。

var str = '我是字串';alert(str.substring()); //'我是字串'alert(str.substring(-,)); //'我'alert(str.substring()); //字串alert(str.substring(,)); //'我是' 與str.substring(,)是一樣的。可以檢測兩個數,大的往後仍,小的往前仍。負數當成來處理。alert(str.slice(,)); //空白 找不到,不交換位置alert(str.slice(-)); //'符串' 負數就是從後面倒著往前數 

比較類:

alert(‘我'>'你'); //true 字串比較就比較第一個字元對應的Unicode值大小,後邊的就不比較了。

其他類:

alert(str.length); //擷取字串長度

split() //把字串切成數組

參數: 一個 指定一個分割符用來分割字串。

1,如果不指定分割符,就不會分割,直接存入數組。

2,以分割符為依據,把分割符左右兩邊的值分別存入數組。

3,分割符本身不會存入數組。

4,分割符只能是字串中存在的子字串。

5,在split看來,兩個字元之間必須依靠Null 字元串聯接。

6,當用Null 字元串去分割Null 字元串的時候,會得到一個空數組。

var str = '';alert( typeof str ); //stringalert( typeof str.split() ); //objectalert( str.split().length ); //['']alert( str.split('') ); //['','']alert( str.split('a') ); //['']alert( str.split('') ); //['','']alert( str.split('').length ); //['','','','']alert( str.split('') ); //['','','','']//'' 由五個 '' 加 四個字元組成alert( str.split('') );//['','']alert( str.split('') ); //['','']alert( ''.split(' ').length ); //['']alert( ''.split('').length ); //[]//特例,只有這種情況下 split 才會返回空數組。 

trim() : 去除字串首尾的所有空格。(字串中間的空格會保留)。

   html5的新方法,低版本瀏覽器不支援。

toUpperCase() : 把字串全部轉換成大寫。(沒有參數)

toLowerCase() : 把字串全部轉換成小寫。(沒有參數)

最後,所有的字串方法,都不會修改字串本身。

javascript字串串連類

在我們寫前端的js時,經常會出現將很多的字串通過“+”拼接起來,然後掛載的某個DOM元素上。然而關於使用“+”來拼接字串,在各瀏覽器下解析的效果,我就在此不做對比了,網上這類的對比很多。很多牛人都說通過使用js中的Array的join方法來拼接字串效果很不錯。為此在項目中寫一個js類,用來統一處理字串的拼接。

代碼

//自訂的一個字串串連類,用於拼接字串,比"+"要提升效能function StringBuffer(){ this._strs = new Array(); }StringBuffer.prototype.append = function(str){ this._strs.push(str); };StringBuffer.prototype.arrayToString = function() { return this._strs.join(""); }; 

而我們在使用該類時,可以直接通過如下方法:

var strBuff=new StringBuffer();strBuff.append("hello,");strBuff.append("Welcome to Javascript!");alert(strBuff.arrayToString());
您可能感興趣的文章:
  • JS解析json資料並將json字串轉化為數組的實現方法
  • js去除重複字串兩種實現方法
  • js 字串轉換成數位三種方法
  • JS截取字串常用方法詳細整理
  • js 將json字串轉換為json對象的方法解析
  • js將字串轉成Regex的實現方法
  • js 去除字串第一位逗號的方法
  • JS產生隨機字串的多種方法
  • PHP處理Json字串解碼返回NULL的解決方案
  • PHP處理JSON字串key缺少雙引號的解決方案
  • JavaScript字串對象slice方法入門執行個體(用於字串截取)
  • js判斷一個字串是否包含一個子串的方法

聯繫我們

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