饥人谷技术博客

js字符串

2017-09-10  本文已影响63人  李诺哦

字符串

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

'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"?"

注意: 转义符在js中不计算长度

var str = "d\'rg\\a"
console.log(str) //"d'rg\a"
console.log(str.length) //6

字符串多行

字符串长度较长时,可拆成多行,换行符之前需使用转义符号

var a = 'hel
\'llo' //error

var a = 'hel\
\'llo'
console.log(a) // "hel'llo"

字符串换行更安全的写法

var longstring = 'long'
+ 'long'
+ 'long'
+ 'string'
console.log(longstring) // "longlonglongstring"

ES6处理长字符串方法

`
hello
ddd
` 
/* hello
   ddd
*/

字符串常用方法

以下是常用方法

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; //字符串拼接
    var color = 'red'
    var str4 = '衣服的颜色' + color 
    var str5 = '衣服的颜色${color}' 
    console.log(str4) //"衣服的颜色red"
    console.log(str5) //"衣服的颜色red"
    cosnole.log( str3 );


    console.log(str.charAt(1)) //"e"
    console.lgo(str.charCodeAt(1)) //101  返回字符串的ASCII码

字符串截取 可实现字符串伪删除

    var str = "hello world";
    var sub1 = str.substr(1, 3); // 第一个是开始位置, 第二个是长度  ell
    var sub2 = str.substring(1, 3); // 第一个是开始位置,第二个是结束位置,长度为第二个-第一个  el
    var sub3 = str.slice(1, 3); // 同上 允许负参
    var sub2 = str.slice(0,-1)
    console.log(sub3) //"hello worl"  实现字符串伪删除效果
    console.log(str) //"hello world"  均不会改变原数组

查找

var str = "hello my world";
    var s1 = str.search('my');   //6 找不到为-1
    str.indexOf('my') //6 效果于.search类似
    var s2 = str.replace('my', '[1, 7, 2]') //"hello [1, 7, 2] world"  把replace(v1, v2)中v1替换为v2
    var s4 = str.replace('my','') 
    console.log(s4) //"hello  world"  使用replace实现删除字符串效果
    var s3 = str.match('my'); //返回匹配的数组 常配合正则表达式使用
    console.log(str) //"hello my world"

大小写

var str = 'hello my world'
console.log(str.toUpperCase()) //"HELLO MY WORLD"
console.log(str) //"hello my world" 不改变原数组
console.log(str.toLowerCase()) //hello my world
console.log(str) //"hello my world" 不改变原数组
上一篇下一篇

猜你喜欢

热点阅读