本文详解JavaScript中处理字符串的核心方法。重点解析substring与substr在截取子串时的参数差异及行为区别,并介绍利用split将字符串分割为数组、使用join将数组合并为字符串的技巧,同时结合indexOf查找字符位置,提供完整代码示例供参考。
JavaScript字符串处理概述
本文通过具体实例介绍JavaScript中处理字符串的相关技术,旨在为开发者提供实用的参考方案。
在JavaScript中,截取字符串主要依赖 substring() 或 slice() 方法。此外,split() 函数也是字符串处理的重要工具。
split() 函数的作用是利用指定的分隔符,将一个字符串切割并存储到数组中。
具体应用示例如下:
str="jpg|bmp|gif|ico|png";
arr=theString.split("|");
//arr是一个包含字符值"jpg"、"bmp"、"gif"、"ico"和"png"的数组
此处原文提及 John() 函数,但在标准JavaScript中通常指代 join() 方法,用于数组操作。
其功能是使用用户指定的分隔符,将一个数组合并成一个字符串。
相关示例代码如下:
var delimitedString=myArray.join(delimiter);
var myList=new Array("jpg","bmp","gif","ico","png");
var portableList=myList.join("|");
//结果是jpg|bmp|gif|ico|png
核心截取方法:substring与indexOf
substring() 是用于字符串截取的标准方法。
该方法的用途是从字符串中提取子串。例如,若要从 "MinidxSearchEngine" 中提取 "Minidx",需调用 substring(0,6)。
indexOf() 函数用于返回字符串中匹配指定子串的第一个字符的索引位置。
var myString="JavaScript";
var w=myString.indexOf("v");w will be 2
var x=myString.indexOf("S");x will be 4
var y=myString.indexOf("Script");y will also be 4
var z=myString.indexOf("key");z will be -1
substring与substr方法的区别详解
补充说明:JS中 substring 和 substr 两个方法在截取字符串时存在显著区别。
关于 substr 方法的详细说明。
该方法返回一个从指定起始位置开始、具有指定长度的子字符串。
语法格式为:stringvar.substr(start [, length ])。
参数说明如下。
stringvar:必选参数,指代要提取子字符串的字符串文字或 String 对象。
start:必选参数,指定子字符串的起始位置,字符串中第一个字符的索引为 0。
length:可选参数,指定返回子字符串中包含的字符个数。
注意事项。
如果 length 参数为 0 或负数,将返回一个空字符串。若未指定该参数,子字符串将延续至 stringvar 的末尾。
代码示例。
以下示例演示了 substr 方法的具体用法。
function SubstrDemo(){
var s, ss; // 声明变量。
var s = "The rain in Spain falls mainly in the plain.";
ss = s.substr(12, 5); // 获取子字符串。
return(ss); // 返回 "Spain"。
}
关于 substring 方法的详细说明。
该方法返回位于 String 对象中指定位置的子字符串。
语法格式为:strVariable.substring(start, end) 或 "String Literal".substring(start, end)。
参数说明如下。
start:指明子字符串的起始位置,索引从 0 开始计算。
end:指明子字符串的结束位置,索引从 0 开始计算。
注意事项。
substring 方法返回包含从 start 到最后(不包含 end)的子字符串。
substring 方法会自动使用 start 和 end 两者中的较小值作为起始点。例如,strvar.substring(0, 3) 与 strvar.substring(3, 0) 返回相同的子字符串。
如果 start 或 end 为 NaN 或负数,则将其替换为 0。
子字符串的长度等于 start 和 end 之差的绝对值。例如,strvar.substring(0, 3) 和 strvar.substring(3, 0) 返回的子字符串长度均为 3。
代码示例。
以下示例演示了 substring 方法的具体用法。
function SubstringDemo(){
var ss; // 声明变量。
var s = "The rain in Spain falls mainly in the plain..";
ss = s.substring(12, 17); // 取子字符串。
return(ss); // 返回子字符串。
}
希望上述关于JavaScript字符串处理的内容能对程序设计有所帮助。