JS-5-1字符串

2019-01-18  本文已影响0人  学的会的前端

字符串是基本类型:

var str = "hello word";
var str1 = str;
str = "liqi";
console.log(str1); //hello word ,在此时str1和str的值是一样的,但没有任何联系
console.log(str); // liqi 改变str的值,对str1不影响。

字符串的存在形式:

'abc'
"abc"
(function(){/*
  line 1
  line 2
  line 3
*/ }).toString().split('\n').slice(1,-1).join('\n')
//"line 1 line 2 line 3"
var str1 = 'li"hao"'; //单引号中可以包含双引号
var str2 = "lili'hao'ni"; // 双引号中可以包含单引号
var str3 = 'hello \'niao\''; //单引号中引用单引号,必须使用\转义符号
var str4 = "hrllo\" str5\""; //双引号中使用双引号,必须使用\转移符号
var str5 = "hello\n word"; //\n代表换行,是一个字符
var str6 = "hrllo\\n li"; //\n失去原有的含义,变成普通字符,所以控制台展示:hrllo\n li
var str7 = "htllo\twoef" //\t是tab键,表示一个空格
/*var str8 = "a
var" *///字符串换行会报错,相当于每一行是一条语句,而第一行的语句少一个""引号,会报错,下面的语句都不会执行。
var str9 = "long \
long \
lonl"// s使用\可以实现字符串的换行,控制台展示:long long lonl
//注意点:\后面千万不要写空格,尽量不要使用这种写法
var str10 = "liqi"
+ "liqi"
+ "liq" //+可以把小字符串拼接成长字符串。控制台展示:liqiliqiliq
var str11 = "liqi\\liqi"//想使用\,必须在\前面再加一个\,使前面\转义,展示:"liqi\liqi"
var fn = function(){/*
    <head>
        <meta charset="UTF-8">
        <title>作用域链</title>
    </head>
*/}
console.log(fn.toString())

//控制台展示:
//function(){/*
//  <head>
//      <meta charset="UTF-8">
//      <title>作用域链</title>
//    </head>
// */}
/*缺点:在代码优化的过程中,源码会做一些压缩合并,但是有些工具
会自动的把注释省略掉,达不到想要的效果。*/
TIM图片20190118133123.png

常见的字符串的操作

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

var str1 = "hello";
var str2 = "word";
console.log(str1 + ' ' + str2);//+' '+的含义是使两个字符串中间存在空格
TIM图片20190118133616.png
var str1 = "hELlo";
var str2 = "word";
console.log(str1 + ' ' + str2);//+''+的含义是使两个字符串中间存在空格
console.log(str1.length); // 5
console.log(str1[0]); //h
console.log(str1[100]); //获取的长度超过字符串的长度,不会报错,返回undefined
console.log(str1[str1.length-1]);//o获取str1的最后一个字符
console.log(str1.charAt(0));//获取str1的第一个字符h
console.log(str1.charCodeAt(0));//获取第一个字符的ASCII码 104
TIM图片20190118134424.png
var str3 = "liqi nihaome";
var s1 = str3.subStr(1,4);//1是起始位置,4是结束位置,长度是4,liqi
var s2 = str3.subString(1,4);//1是起始位置,4是结束位置,长度是4-1=3。liq
var s3 = str3.slice(1,3);//同上,但是允许负参。
console.log(str3); //原字符串保持不变
 var str = "hello my world";
 var s1 = str.search('my');   //6 找不到为-1
 var s2 = str.replace('my', 'your'); //
 var s3 = str.match('my'); //返回匹配的数组
  var str = "Hello";
  str.toUpperCase();//把一个字符串变成大写
  str.toLowerCase();//把一个字符串变成小写
TIM图片20190118135638.png
  1. 以空字符串做切割


    TIM图片20190118140029.png
  2. 以l做切割


    TIM图片20190118140115.png

    作用:

  3. 判断字符串是否是一个回文abcdedcba
var str = "abcdefg"
str.split('');//得到一个数组
str.split('').reverse();//将数组倒过来
str.split('').reverse().join('');//以空字符做连接生成新的字符串
判断:
str = str.split('').reverse().join('');//判断是否是回文
  1. 对字符串进行倒叙。
var str = "abcdefg"
str.split('');//得到一个数组
str.split('').reverse();//将数组倒过来
str.split('').reverse().join('');//以空字符做连接生成新的字符串
上一篇 下一篇

猜你喜欢

热点阅读