历史版本14 :字符串对象 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1.描述编辑


JavaScript中我们总是会需要对字符串进行操作,比如如何判断字符串是否为空,字符串的长度,替换,查找,截取,或者将字符串转换为其他类型等操作。

该章节我们介绍JavaScript中如何对字符串进行操作。

2.字符串的长度编辑

2.1 返回字符串长度

若想获取字符串长度,可以使用字符串对象的length属性。例如:

var txt= "Hello FR";	
alert("字符串长度为:"+txt.length);       //返回长度

就会返回8。

如果需要获取文本控件中字符串的长度,可以使用如下代码:

var strCtl = this.options.form.getWidgetByName("控件名"); 
alert("字符串长度为:"+strCtl.getText().length); //返回长度

2.2 字符串的判空

字符串为空,即字符串长度为0,若要实现判空,可以用如下方法:

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

txt.length==0 或 txt=='' 只需要满足一个即可。

3.字符串的替换编辑

字符串 stringObject 的 replace() 方法执行的是查找并替换的操作。

它将在 stringObject 中查找与 regexp 相匹配的子字符串,然后用 replacement 来替换这些子串。如果 regexp 具有全局标志 g,那么 replace() 方法将替换所有匹配的子串。否则,它只替换第一个匹配子串。

举例说明,JavaScript代码如下:

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

将返回Hello FineReport!

4.字符串的查找编辑

4.1 方法一

search(regexp) 方法用于检索字符串中指定的子字符串。

他将返回stringObject 中第一个与 regexp 相匹配的子串的起始位置。如果没有找到,将返回-1。

search方法无法查找全局,只查找第一个出现的匹配字符串。
举例说明,JavaScript代码如下:

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

将返回9

4.2 方法二

可以使用字符串的search( )方法查找当前字符串是否包含另外一个字符串。

举例说明:

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

返回的i是“D”在字符串"abcDF"中索引,为第三个,0开始第一个!

5.字符串的截取编辑

我们可以用substr(start,length)方法来提取一个字符串中的部分内容。

其中start是起始,提取长度为length的新字符串。

举例说明,JavaScript代码如下:

var txt="Visit FR!";
var txt2=txt.substr(6,2);    //从第六个开始取两个字符
alert(txt2);

上述将返回FR。

字符串下标从0开始,如果start为负,则默认从头开始提取。

6.字符串的连接编辑

可以通过字符串的concat(str1,str2...)方法将多个字符串连接起来

举例说明:

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

将返回helloFR

7.字符串类型转换编辑

7.1 将字符串转换为数值

可以直接用强制转换。

如果是转换为浮点数,则为parseFloat(str)

如果转换为整数型,则为parseInt(str, radix) radix表示要解析的数字的基数。该值介于 2 ~ 36 之间。
如果省略该参数或其值为 0,则数字将以 10 为基础来解析。
如果它以 “0x” 或 “0X” 开头,将以 16 为基数。
如果该参数小于 2 或者大于 36,则 parseInt() 将返回 NaN。
举例说明:

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

将返回3.14和15

7.2 将字符串转换为数组

可以使用字符串的split(separate)方法将字符串分割为数组。

separate为筛选字符串。

举例说明:

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

str2将存储为一个字符串数组,值分别为"I","love","FR"

7.3 将字符串字母统一转换成大写

可以使用字符串的toUpperCase( )方法将字符串中的所有字母转换为大写。

var data="FineReport 10.0";
var newdata=data.toUpperCase(); //newdata 将转换为 FINEREPORT 10.0
alert(newdata);

说明 :toUpperCase 方法对非字母字符不会产生影响。


7.4 将字符串字母统一转换为小写


可以使用字符串的toLowerCase( )方法将字符串中的所有字母转换为小写。

举例说明:

var data="FineReport 10.0";
var newdata=data.toLowerCase(); //newdata 将转换为 finereport 10.0
alert(newdata);