美文网首页
Javascript 10 字符串

Javascript 10 字符串

作者: 红豆丁244 | 来源:发表于2018-09-06 05:49 被阅读0次

    字符串

    字符串就是零个或多个排在一起的字符,放在单引号或双引号之中。

    'abc'
    "abc"
    

    单引号字符串的内部,可以使用双引号。双引号字符串的内部,可以使用单引号。

    'key="value"'
    "It's a long journey"
    

    多行与转义

    如果要在单引号字符串的内部,使用单引号(或者在双引号字符串的内部,使用双引号),就必须在内部的单引号(或者双引号)前面加上反斜杠,用来转义。

    'Did she say \'Hello\'?'
    // "Did she say 'Hello'?"
    
    "Did she say \"Hello\"?"
    // "Did she say "Hello"?"
    

    字符串默认只能写在一行内,分成多行将会报错。

    'a
    b
    c'
    // SyntaxError: Unexpected token ILLEGAL
    

    上面代码将一个字符串分成三行,JavaScript就会报错。

    如果长字符串必须分成多行,可以在每一行的尾部使用反斜杠。

    var longString = "Long \
    long \
    long \
    string";
    
    longString
    // "Long long long string"
    

    上面代码表示,加了反斜杠以后,原来写在一行的字符串,可以分成多行,效果与写在同一行完全一样。注意,反斜杠的后面必须是换行符,而不能有其他字符(比如空格),否则会报错。

    连接运算符(+)可以连接多个单行字符串,用来模拟多行字符串。

    var longString = 'Long '
      + 'long '
      + 'long '
      + 'string';
    

    反斜杠在字符串内有特殊含义,用来表示一些特殊字符,所以又称为转义符。

    如果字符串的正常内容之中,需要包含反斜杠,则反斜杠前需要再加一个反斜杠,用来对自身转义。

    var path = "C:\\games\\war3\\"
    

    ES6扩展

    多行字符串

    var str =  `
    你好
    这里是饥人谷
    jirengu.com
    开启你的前端之路
    `
    

    字符串模板

    var name = '饥人谷'
    var website = 'jirengu.com'
    
    var str = `你好, 这里是${name},${website},开启你的前端之路`
    //"你好, 这里是饥人谷,jirengu.com,开启你的前端之路"
    

    常见的字符串方法

    1. 长度计算,连接
        var str = "hello";
        console.log( str.length );
        console.log( str[0] );
        console.log( str[str.length - 1]  );
        console.log( str.charAt(0) );
        console.log( str.charCodeAt(0) );
    
        var str2 = " world";
        var str3 = str1 + str2;
        cosnole.log( str3 );
    
    1. 字符串截取
        var str = "hello world";
        var sub1 = str.substr(1, 3); // 第一个是开始位置, 第二个是长度  ell
        var sub2 = str.substring(1, 3); // 第一个是开始位置,第二个是结束位置,长度为第二个-第一个  el
        var sub3 = str.slice(1, 3); // 同上 允许负参
    

    字符串操作不会修改原来的字符串

    1. 查找
        var str = "hello my world";
        var s1 = str.search('my');   //6 找不到为-1
        var s2 = str.replace('my', 'your'); //
        var s3 = str.match('my'); //返回匹配的数组
    
    1. 大小写
        var str = "Hello";
        str.toUpperCase();
        str.toLowerCase();
    

    字符串操作不会修改原来的字符串

    相关文章

      网友评论

          本文标题:Javascript 10 字符串

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