字串物件

1. 概述

JavaScript 中會需要對字串進行操作,比如如何判斷字串是否為空,計算字串的長度,更換、尋找、截取字串,或者將字串轉換為其他類型等操作。

正文將介紹 JavaScript 中如何對字串進行操作。

2. 字串長度

2.1 傳回字串長度

1)若想獲取字串長度,可以使用字串物件的 length 屬性,如下傳回  "hello FR" 字元的長度為 8。

var txt= "Hello FR";
alert("字串長度為:"+txt.length);       //傳回長度

2)若需要獲取正文元件中字串的長度,可以使用如下程式碼:

var strCtl = this.options.form.getWidgetByName("元件名"); 
alert("字串長度為:"+strCtl.getText().length); //傳回長度

2.2 字串的判空

字串為空,即字串長度為 0,若要實現判空,txt.length==0 或 txt=='' 只需要滿足一個即可。如下方法:

var txt= "";
if(txt.length==0||txt=='') alert("字串為空"); //為空 
else alert("字串不為空"); //不為空

3. 字串的更換

字串 stringObject 的 replace() 方法執行的是尋找並更換的操作。它將在 stringObject 中尋找與 regexp 相匹配的子字串,然後用 replacement 來更換這些子串。如果 regexp 具有全局標籤 g,那麼 replace() 方法將更換所有匹配的子串。否則,它只更換第一個匹配子串。

如下 JavaScript 程式碼,將傳回 Hello FineReport!

var txt="Visit FineReport!";
var txt2=txt.replace(/Visit/, "Hello");
alert(txt2);

4. 字串的尋找

4.1 方法一

search(regexp) 方法用於檢索字串中指定的子字串。

他將傳回 stringObject 中第一個與 regexp 相匹配的子串的起始位置。如果沒有找到,將傳回-1。

search 方法無法尋找全局,只尋找第一個出現的匹配字串。
如下 JavaScript 程式碼,將傳回 9

var txt = "123456789abcde";
var location=txt.search("abc");
alert(location);

4.2 方法二

可以使用字串的 search( ) 方法尋找當前字串是否包含另外一個字串。

如下 JavaScript 程式碼,傳回的 i 是“D”在字串"abcDF"中索引,為第三個,索引從0開始。

var str="abcDF";
var i=str.search("D");
alert(i);  //i將=3

5. 字串的截取

可以用 substr(start,length) 方法來提取一個字串中的部分內容。其中 start 是起始,提取長度為 length 的新字串。字串下標從 0 開始,如果 start 為負,則預設從頭開始提取。

如下 JavaScript 程式碼,將傳回 FR。

var txt="Visit FR!";
var txt2=txt.substr(6,2);    //從第六個開始取兩個字元
alert(txt2);

6. 字串的連結

可以透過字串的 concat(str1,str2...) 方法將多個字串連結起來

如下 JavaScript 程式碼,將傳回 helloFR

var str1="hello";  
var str2="FR";  
var str3=str1.concat(str2);  
alert(str3);

7. 字串類型轉換

7.1 將字串轉換為數值

可以直接用強制轉換。

如果是轉換為浮點數,則為 parseFloat(str)

如果轉換為整數型,則為 parseInt(str, radix) radix 表示要解析的數位的基數。該值介於 2 ~ 36 之間。
如果省略該參數或其值為 0,則數字將以 10 為基礎來解析。
如果以 “0x” 或 “0X” 開頭,將以 16 為基數。
如果該參數小於 2 或者大於 36,則 parseInt() 將傳回 NaN。
如下 JavaScript 程式碼,將傳回 3.14 和 15

var str1=parseFloat("314e-2");     //傳回3.14
alert(str1);
var str2=parseInt("17",8);//傳回 15 (8+7)
alert(str2);

7.2 將字串轉換為陣欄

可以使用字串的 split(separate) 方法將字串分割為陣欄,separate 為篩選字串。

如下 JavaScript 程式碼,str2 將儲存為一個字串陣欄,值分別為"I","love","FR"

var str1="I love FR";
var str2=str1.split(" ");
alert(str2);

7.3 將字串字母統一轉換成大寫

可以使用字串的 toUpperCase( ) 方法將字串中的所有字母轉換為大寫,toUpperCase 方法對非字母字元不會產生影響。

var data="FineReport 10.0";
var newdata=data.toUpperCase(); //newdata 將轉換為 FINEREPORT 10.0
alert(newdata);

7.4 將字串字母統一轉換為小寫

可以使用字串的 toLowerCase( ) 方法將字串中的所有字母轉換為小寫。

var data="FineReport 10.0";
var newdata=data.toLowerCase(); //newdata 將轉換為 finereport 10.0
alert(newdata);

附件列表


主題: 二次開發
已經是第一篇
已經是最後一篇
  • 有幫助
  • 沒幫助
  • 只是瀏覽
中文(繁體)

滑鼠選中內容,快速回饋問題

滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。

不再提示

7s后關閉

獲取幫助
線上支援
獲取專業技術支援,快速幫助您解決問題
工作日9:00-12:00,13:30-17:30在线
頁面反饋
針對當前網頁的建議、問題反饋
售前咨詢
業務咨詢
電話:0933-790886或 0989-092892
郵箱:taiwan@fanruan.com
頁面反饋
*問題分類
不能為空
問題描述
0/1000
不能為空

反馈已提交

网络繁忙

反饋已提交

網絡繁忙