Javascript中使用String对象的方法

本文介绍了JavaScript中String对象的indexOf()和substring()方法的使用。通过示例展示了如何查找子字符串的位置索引及从一个字符串中截取出子字符串。

String对象有许多的方法,因此我们这里的讨论范围只限于其中的两个,indexOf() substring()方法。

你已经看到,JavaScript字符串是由字符组成的。这些字符中的每一个都有一个索引。这个索引是从0开始的,所以第一个字符的位置的索引是0,第二个是1,以此类推。方法indexOf()查找并返回子字符串起始的索引位置(lastIndexOf()方法则返回子字符串结束的位置)。举个例子,如果我们想让我们的用户输入e-mail地址,我们能检查在它们的输入中是否包含@符号。(虽然这不能确保邮件地址是合法的,但至少可以在很大程度上确保其有效,稍候我们会在这本书中接触更复杂的数据校验。)

接下来,我们使用prompt()方法获取用户的 e-mail地址,然后检查输入中是否包含@符号,并使用indexOf()返回@符号的索引:

<html>

<body>

<script type="text/javascript">

var userEmail= prompt( "Please enter your email

address ", "" );

document.write( userEmail.indexOf( "@" ) );

</script>

</body>

</html>

如果没有发现@ ,在页面中会输出-1。只要在这个字符出现在输入字符串中的任何位置,就会返回索引中它的位置,换句话说某个大于-1的数。

substring()函数使用子字符串的起始和结束位置的索引作为参数,从另一个字符串中截取一个字符串。我们可以不使用第二个参数来返回从第一个索引到字符串结束的所有字符串。因此要截取从第三个字符(索引2)到第六个字符(索引5)的索引字符,我们这样写:

<html>

<body>

<script type="text/javascript">

var myOldString = "Hello World";

var myNewString = myOldString.substring( 2, 5 );

document.write( myNewString );

</script>

</body>

</html>

你在浏览器中会看到页面中输出了llo。注意substring()方法复制了它返回的子字符串,但它没有改变原来的字符串。

当你处理未知的值时,substring()方法真的会用到它自己。这是另一个例子,它同时使用了indexOf()和substring()方法:

<html>

<body>

<script type="text/javascript">

var characterName = "my name is Simpson, Homer";

var firstNameIndex = characterName.indexOf( "Simpson,

" ) + 9;

var firstName = characterName.substring( firstNameIndex );

document.write( firstName );

</script>

</body>

</html>

我们在变量characterName的字符串中提取Homer,使用indexOf()查找姓的起始位置,然后给它加上9得到名的起始位置的索引(因为Simpson, 9个字符的长度),并把它存储在firstNameIndex中。它会在substring()方法中被使用来提取从名的起始开始的所有字符-我们没有指定最后一个索引,因此这个字符串中的其余字符都会被返回。

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值