您的位置:首页 > Web前端 > JavaScript

js substring() substr () lastIndexOf() indexOf() isNaN()用法

2012-10-08 19:00 696 查看
substring(start,end) 用于从A串中截取子串 B

start 必填参数 表示从A中要开始截取的字符位置(索引) end 选填参数 表示从A中截取结束的字符位置(索引) 返回的子串是包含start但不包含end的一个子串。

如果不填写end 返回从start开始一直到A串末尾的子串。

注意:

如果 start 与 end 相等,那么该方法返回的就是一个空串 “”(即长度为 0 的字符串)。

如果 start 比 end 大,那么该方法在提取子串之前会先交换这两个参数。

如果 start 或 end 为负数,那么它将被替换为 0。

例子: string A="0123456";

Strig B=A.substring(2,5); B=234

String B=A.substring(2); B=23456;

substr(start,length) 返回一个从指定位置开始的指定长度的子字符串

start 必填 表示从A中要开始截取的字符位置(索引) length 可选 表示从start开始截取多少个字符 其中包含start 如果不填写length 返回从start开始一直到A串末尾的子串

注意:

如果 length 为 0 或负数,将返回一个空字符串“”。

如果 start 或length为负数,那么它将被替换为 0。

例子: string A="0123456";

Strig B=A.substr(2,5); B=23456

String B=A.substr(2); B=23456;

stringObject.lastIndexOf(searchvalue,startindex) 方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索

searchvalue必需。规定需检索的字符串值。
fromindex可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的最后一个字符处开始检索。
该方法将从尾到头地检索字符串 stringObject,看它是否含有子串 searchvalue。开始检索的位置在字符串的fromindex 处(查找时包含fromindex处字符)或字符串的结尾(没有指定
fromindex 时)。如果找到一个 searchvalue,则返回 searchvalue 的第一个字符在
stringObject 中的位置。stringObject 中的字符位置是从 0 开始的。

lastIndexOf() 方法对大小写敏感!
如果要检索的字符串值没有出现,则该方法返回 -1。

实例

在本例中,我们将在 "Hello world!" 字符串内进行不同的检索:

<script type="text/javascript">

var str="Hello world!"
document.write(str.lastIndexOf("Hello") + "<br />")
document.write(str.lastIndexOf("World") + "<br />")
document.write(str.lastIndexOf("world"))

document.write(str.lastIndexOf("l,4"))
</script>[/code]
以上代码的输出:

0
-1
6

3


indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。

语法

stringObject.indexOf(searchvalue,fromindex)

参数描述
searchvalue必需。规定需检索的字符串值。
fromindex可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的首字符开始检索。

说明

该方法将从头到尾地检索字符串 stringObject,看它是否含有子串 searchvalue。开始检索的位置在字符串的 fromindex 处(查找时包含fromindex处字符)或字符串的开头(没有指定 fromindex 时)。如果找到一个 searchvalue,则返回 searchvalue 的第一次出现的位置。stringObject 中的字符位置是从 0 开始的。

提示和注释

注释:indexOf() 方法对大小写敏感!
注释:如果要检索的字符串值没有出现,则该方法返回 -1。

实例

在本例中,我们将在 "Hello world!" 字符串内进行不同的检索:

<script type="text/javascript">

var str="Hello world!"
document.write(str.indexOf("Hello") + "<br />")
document.write(str.indexOf("World") + "<br />")
document.write(str.indexOf("world"))

</script>

以上代码的输出:

0
-1
6


isNaN() 函数用于检查其参数是否是非数字值。

语法

isNaN(x)

参数描述
x必需。要检测的值。

返回值

如果 x 是特殊的非数字值 NaN(或者能被转换为这样的值),返回的值就是 true。如果 x 是其他值,则返回 false。

说明

isNaN() 函数可用于判断其参数是否是 NaN,该值表示一个非法的数字(比如被 0 除后得到的结果)。

如果把 NaN 与任何值(包括其自身)相比得到的结果均是 false,所以要判断某个值是否是 NaN,不能使用 == 或 === 运算符。正因为如此,isNaN() 函数是必需的。

提示和注释

提示:isNaN() 函数通常用于检测 parseFloat() 和 parseInt() 的结果,以判断它们表示的是否是合法的数字。当然也可以用 isNaN() 函数来检测算数错误,比如用 0 作除数的情况。

实例

在本例中,我们将使用 isNaN() 在检测无穷数: 以下均为isNaN函数

<script type="text/javascript">

document.write(isNaN(123))	//返回 false
document.write(isNaN(-1.23))	//返回 false
document.write(isFinite(5-2))	//返回 false
document.write(isFinite(0))		//返回 false
document.write(isFinite(0/0))	//返回 true
document.write(isFinite("Hello"))	//返回 true
document.write(isFinite("2005/12/12"))	//返回 true
document.write(isFinite(true))	//返回 false
document.write(isFinite(undefined))	//返回 true

</script>


由实例可见 如果X为非法数字或不是数字返回true,相反返回false。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: