JavaScript String对象详解:创建方式与常用方法

作者:代码拾荒时间:2026-10-29 11:02:06浏览:234

本文介绍JavaScript中String对象的两种创建方式及其区别,包括显式与隐式声明对类型和性能的影响。同时详细解析indexOf和substring两个核心方法的使用,通过Email验证和字符串截取实例演示具体应用。

JavaScript String对象概述

String对象用于存储字符串数据,并提供了处理字符串所需的各类属性和方法。

String对象的创建方式

1. 创建String对象:显式与隐式


<DOCTYPE html>
<html>
  <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
  <head>
    <title>js函数</title>
  </head>
  <script type="text/javascript">
     //申明String对象的两种方式:显式和隐式申明
     //1.隐式
     var myString="abc";
     document.write(myString+"<br/>");
     //2.显式
     var myString2=new String("abc");
     document.write(myString2+"<br/>");
  </script>
  <body>
  
  </body>
</html>

显式声明和隐式声明String对象在类型上存在差异:隐式声明的字符串对象类型为string,而显式声明的对象类型为object。

显式创建与隐式创建字符串的主要区别在于,若需重复使用相同的字符串,显式创建字符串能带来更高的效率。

此外,显式创建字符串有助于JavaScript解释器区分数字与字符串,避免类型混淆。

String对象的常用方法

2. 使用String对象的方法

String对象包含众多方法,本文重点讨论indexOf()和substring()方法,使用时需注意大小写敏感。

需要明确的是,JavaScript字符串由字符组成,每个字符对应一个从0开始的索引值,即第一个字符索引为0,第二个为1,依此类推。

indexOf()方法用于查找并返回子字符串首次出现的索引位置;若未找到目标元素,则返回-1。此外,lastIndexOf()方法用于返回子字符串最后一次出现的位置。

以下示例演示如何判断用户输入的Email地址中是否包含@符号:


<DOCTYPE html>
<html>
  <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
  <head>
    <title>js函数</title>
  </head>
  <script type="text/javascript">
     //让用户输入Email地址,检查输入是否包含@符号
     //使用prompt方法,获取用户输入的Email地址,检查是否包含@符号,使用indexof返回@符号的索引
     var userInput=prompt("Please enter your email address","Email");
     if(Number(userInput.indexOf("@"))==-1)
     {
      document.write("对不起,您输入的Email不合法");
     }
     else
     {
     document.write("恭喜您,您输入的Email通过验证");
     }
  </script>
  <body>
  </body>
</html>

substring()方法通过指定字符串的起始和结束索引参数,从原字符串中截取子字符串。若省略第二个参数,则返回从起始索引到字符串末尾的所有内容。例如,截取从第三个字符到第六个字符的代码如下:


<DOCTYPE html>
<html>
  <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
  <head>
    <title>js函数</title>
  </head>
  <script type="text/javascript">
    //从起始位置,到结束位置
    var myhello="Hello Javascript World";
    var newMyhello= myhello.substring(0);
    document.write(newMyhello+"<br/>");
    //从第三个字符到第六个字符
     var myhello="Hello Javascript World";
    var newMyhello= myhello.substring(2,5);
    document.write(newMyhello+"<br/>");
  </script>
  <body>
  </body>
</html>

以上即为本文的全部内容,希望读者能够喜欢。

作者最新文章