在报表开发过程当中,有些需求可能没法经过现有的功能来实现,须要开发人员二次开发,以FineReport为例,可使用网页脚本、API接口等进行深刻的开发与控制。数组
考虑到JS脚本开发的使用较多,这里先先简单介绍如何用JS对字符串进行操做,好比如何判断字符串是否为空,字符串的长度,替换,查找,截取,或者将字符串转换为其余类型等。spa
1. 字符串的长度code
1.1 返回字符串长度regexp
获取字符串长度,可使用字符串对象的length属性。例如:对象
var txt= "Hello FR"; txt.length; //返回长度
就会返回8接口
1.2 字符串的判空开发
字符串为空,即字符串长度为0,若要实现判空,能够用以下方法:字符串
if(txt.length==0||txt=='') return true; //为空 else return false; //不为空
这里,txt.length==0 或txt==''只须要知足一个便可string
2. 字符串的替换it
字符串 stringObject 的 replace() 方法执行的是查找并替换的操做。它将在 stringObject 中查找与 regexp 相匹配的子字符串,而后用 replacement 来替换这些子串。若是 regexp 具备全局标志 g,那么 replace() 方法将替换全部匹配的子串。不然,它只替换第一个匹配子串。
这里举个字符串替换的例子:
var txt="Visit FR!"; txt.replace(/Visit/, "Hello");
结果将返回Hello FR!
3. 字符串的查找
search(regexp) 方法用于检索字符串中指定的子字符串,他将返回stringObject 中第一个与 regexp 相匹配的子串的起始位置。
若是没有找到,将返回-1.
可是,search方法没法查找全局,只查找第一个出现的匹配字符串。
4. 字符串的截取
咱们能够用substr(start,length)方法来提取一个字符串中的部份内容。
其中start是起始,提取长度为length的新字符串。
举个例子
var txt="Visit FR!"; txt.substr(6,2); //从第六个开始去两个
上述结果将返回FR
字符串下标从0开始,若是start为负,则默认从头开始提取。
5. 字符串的链接
能够经过字符串的concat(str1,str2...) 方法将多个字符串链接起来
好比
var str1="hello"; var str2="FR"; str1.concat(str2);
结果将返回hello FR
6. 字符串类型转换
6.1 将字符串转换为数值
能够直接用强制转换。
若是是转换为浮点数,则为parseFloat(str)
若是转换为整数型,则为parseInt()
6.2 将字符串转换为数组
可使用字符串的split(separate)方法将字符串分割为数组。
separate为筛选字符串。
好比
var str1="I love FR"; var str2=str1.split(" ");
str2将存储为一个字符串数组,值分别为"I","love","FR"