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

来源:互联网 发布:挖财记账理财软件 编辑:程序博客网 时间:2024/05/23 19:18

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>

以上代码的输出:

0-16
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-16


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))//返回 falsedocument.write(isFinite(5-2))//返回 falsedocument.write(isFinite(0))//返回 falsedocument.write(isFinite(0/0))//返回 truedocument.write(isFinite("Hello"))//返回 truedocument.write(isFinite("2005/12/12"))//返回 truedocument.write(isFinite(true))//返回 falsedocument.write(isFinite(undefined))//返回 true</script>

由实例可见 如果X为非法数字或不是数字返回true,相反返回false。