美文网首页
JavaScript中的字符串

JavaScript中的字符串

作者: 前白 | 来源:发表于2020-05-25 09:57 被阅读0次

    我们知道字符串(String)类型是 JavaScript 中的基本数据类型之一,也是最常用的数据类型啦。下面我们来学习一下关于字符串的属性方法以及其的使用等。

    什么是字符串

    JavaScript 字符串其实很好理解,就是被包围在单引号或双引号中的任意字符。字符串可以用于存储和处理文本。

    示例:

    例如像下面这样声明的变量都是字符串类型:

    var str1 = "123";
    
    var str2 = '12356';
    
    var str3 = "你好,侠课岛";
    
    var str4 = 'hello summer';
    
    var str5 = 'good_boy';
    

    一般情况下字符串就是一个或多个字符组成,除此之外,我们还可以使用 new 关键字将字符串定义为一个对象:

    var name = new String("summer");
    
    console.log(name);  // 输出:summer
    

    不过一般情况下我们最好不要创建 String 对象,因为这可能会导致执行速度变慢。

    通过索引访问字符串

    在 JavaScript 语言中我们可以通过索引来访问字符串中的每个字符,字符串的索引也是从 0 开始,第一个字符索引值为 [0],第二个字符索引值为[1],以此类推。

    示例:

    例如下述代码中,我们定义了一个字符串类型的变量 username,然后输出变量中索引值为1的字符:

    var username = "summer";
    
    console.log(username[1]);  // 输出: u
    

    因为索引是从 0 开始计数,那么索引为1,那应该就是字符串中的第二个字符串,也就是 u

    获取字符串的长度

    我们先来看下面这个字符串:

    var hobby = "basketball";
    

    你能知道这个字符串的长度为多少吗,其实你数一下就能知道,这个字符串的长度就是10。因为这个字符串有10个字符,所以它的长度为10。

    这里要注意的是,字符串里面包含的空格也是会计入长度的,有1个空格长度加1,2个空格长度加2。

    在 JavaScript 语言中,我们可以使用 length 属性来获取字符串长度,length 属性用于返回字符串的长度(字符数)。

    示例:

    例如获取下面这个变量 hobby 的长度并输出:

    var hobby = "basketball";
    
    console.log(hobby.length);  // 输出:10
    

    实际使用时,可能会遇到带有空格的字符串,那么空格会计入字符的长度吗,我们来看看:

    var str1 = "hello xkd";
    console.log(str1.length);  // 输出:9
    

    通过输出结果我们可以知道,空格也会计入字符串的长度的。

    从字符串的长度和索引的关系,我们可以得出一个结论,索引是从0开始,到length-1 结束的。

    转义字符

    有些时候,字符串可能无法被解析,例如下面这个字符串:

    var str1 = "嘿,你好呀~,"侠课岛"";
    console.log(str1);  // Uncaught SyntaxError: Unexpected identifier
    

    那这个时候要怎么办呢,我们可以使用反斜杆 \ 来转义字符串中的双引号。

    示例:
    var str1 = "嘿,你好呀~,\"侠课岛\"";
    
    console.log(str1);   //输出:嘿,你好呀~,"侠课岛"
    

    转义字符\可以用于转义撇号,换行,引号,等其他特殊字符。下面是一些可以用于转义字符转义的特殊字符:

    • \':单引号。
    • \":双引号。
    • \\:反斜杠。
    • \n:换行符。
    • \r:回车符。
    • \t:制表符(tab)。
    • \b:退格符。
    • \f:换页符。

    字符串的方法

    字符串的方法有很多,下面我们简单来看一些比较常用到的几个方法:

    • toLowerCase():此方法用于把字符串转为小写,并返回新的字符串。
    var str1 = "Hello XKD";
    console.log(str1.toLocaleLowerCase());  
    
    //输出: hello xkd
    
    • toUpperCase():此方法用于把字符串转为大写,并返回新的字符串。
    var str1 = "Hello XKD";
    console.log(str1.toUpperCase());  
    
    //输出: HELLO XKD
    
    • toString():用于返回一个表示 String 对象的值。
    var str1 = "Hello";
    console.log(str1.toString());  
    
    //输出: Hello
    
    • concat(): 用于连接两个或多个字符串。
    var str1 = "Hello";
    var str2 = "xkd";
    console.log(str1.concat(str2));  
    
    //输出: Helloxkd
    
    • indexOf():返回某个指定的子字符串在字符串中第一次出现的位置。
    var str1 = "Hello xkd, Congratulations on login!";
    console.log(str1.indexOf('xkd'));  
    
    //输出: 6
    
    • lastIndexOf():返回某个指定的子字符串在字符串中最后出现的位置。
    var str1 = "Hello xkd, Congratulations on login!";
    console.log(str1.lastIndexOf('o'));   
    
    //输出: 31
    
    • slice(): 返回字符串中提取的子字符串。
    var str1 = "Hello xkd, Congratulations on login!";
    console.log(str1.slice(6, 8)); 
    
    //输出: xk
    
    • split():把字符串分割成字符串数组。
    var str1 = "Hello xkd, Congratulations on login!";
    console.log(str1.split(" "));  
    
    //输出: ["Hello", "xkd,", "Congratulations", "on", "login!"]
    
    • substring():提取字符串中介于两个指定下标之间的字符。
    var str1 = "Hello xkd, Congratulations on login!";
    console.log(str1.substring(11, 17));  
    
    //输出: Congra
    
    • replace():在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
    var str1 = "Hello xkd, Congratulations on login!";
    console.log(str1.replace("xkd", "summer"));  
    
    //输出: Hello summer, Congratulations on login!
    
    • match():返回所有查找的关键字内容的数组。
    var str1 = "Hello xkd, Congratulations on login!";
    console.log(str1.match(/on/g));  
    
    //输出: ["on", "on", "on"]
    

    相关文章

      网友评论

          本文标题:JavaScript中的字符串

          本文链接:https://www.haomeiwen.com/subject/plbeahtx.html