Web報表工具FineReport的JS開發(fā)之字符串
Posted on 2016-03-31 13:27 FineReport——報表技術(shù)領(lǐng)跑者 閱讀(147) 評論(0) 編輯 收藏 所屬分類: Java報表技術(shù)知識在報表開發(fā)過程中,有些需求可能無法通過現(xiàn)有的功能來實現(xiàn),需要開發(fā)人員二次開發(fā),以FineReport為例,可以使用網(wǎng)頁腳本、API接口等進行深入的開發(fā)與控制。
考慮到JS腳本開發(fā)的使用較多,這里先先簡單介紹如何用JS對字符串進行操作,比如如何判斷字符串是否為空,字符串的長度,替換,查找,截取,或者將字符串轉(zhuǎn)換為其他類型等。
1. 字符串的長度
1.1 返回字符串長度
獲取字符串長度,可以使用字符串對象的length屬性。例如:
txt.length; //返回長度
就會返回8
1.2 字符串的判空
字符串為空,即字符串長度為0,若要實現(xiàn)判空,可以用如下方法:
if(txt.length==0||txt=='')
else
return false; //不為空
這里,txt.length==0 或txt==''只需要滿足一個即可
2. 字符串的替換
字符串 stringObject 的 replace() 方法執(zhí)行的是查找并替換的操作。它將在 stringObject 中查找與 regexp 相匹配的子字符串,然后用 replacement 來替換這些子串。如果 regexp 具有全局標志 g,那么 replace() 方法將替換所有匹配的子串。否則,它只替換第一個匹配子串。
這里舉個字符串替換的例子:
var txt="Visit FR!";
結(jié)果將返回Hello FR!
3. 字符串的查找
search(regexp) 方法用于檢索字符串中指定的子字符串,他將返回stringObject 中第一個與 regexp 相匹配的子串的起始位置。
如果沒有找到,將返回-1.
但是,search方法無法查找全局,只查找第一個出現(xiàn)的匹配字符串。
4. 字符串的截取
我們可以用substr(start,length)方法來提取一個字符串中的部分內(nèi)容。
其中start是起始,提取長度為length的新字符串。
舉個例子
txt.substr(6,2); //從第六個開始去兩個
上述結(jié)果將返回FR
字符串下標從0開始,如果start為負,則默認從頭開始提取。
5. 字符串的連接
可以通過字符串的concat(str1,str2...) 方法將多個字符串連接起來
比如
var str1="hello";
str1.concat(str2);
結(jié)果將返回hello FR
6. 字符串類型轉(zhuǎn)換
6.1 將字符串轉(zhuǎn)換為數(shù)值
可以直接用強制轉(zhuǎn)換。
如果是轉(zhuǎn)換為浮點數(shù),則為parseFloat(str)
如果轉(zhuǎn)換為整數(shù)型,則為parseInt()
6.2 將字符串轉(zhuǎn)換為數(shù)組
可以使用字符串的split(separate)方法將字符串分割為數(shù)組。
separate為篩選字符串。
比如
var str1="I love FR";