美文网首页
JS中的字符串

JS中的字符串

作者: 追逐_chase | 来源:发表于2019-07-26 09:56 被阅读0次
web.jpeg

字符串

字符串在底层以字符数组保存的,所以具有数组的一个特性

  "hello" -> ["h","e","l""l","0"];
  • length 访问字符串的长度
  var str = "hello";
    //字符串的长度  length
    console.log(str.length);
  • 通过下标索引获取指定的字符
 var str = "hello";
// 获取指定的字符
    console.log(str[3]);
  • +号在字符串中起到链接和拼接的作用
var name = "小明";
var age = 20;
var message = "你好, "+ name + ", 你今年'"+ age + "岁了!";
alert(message);

在ES6新增了一种模板字符串,表示方法和上面的多行字符串一样,但是它会自动替换字符串中的变量

var name = "小明";
var age = 20;
var message = "你好, ${name}, 你今年${age}岁了!";
alert(message);
  • 字符串不可变性
var str = "hello";
    console.log(str);
    str[1] = "d";
    console.log(str[2]);
    console.log(str);
//打印结果
hello
 l
 hello

//



 var str1 = "这是一个字符串"; // 地址:0x120
    str1 = "嘎哈啊";  //地址:0x119
    console.log(str1);
//打印结果:  嘎哈啊

// 解释: str1在字符串对象 有自己的内存地址 0x120,
// 当在新创建一个  "嘎哈啊"  字符串的时候   0x119
//  str1的地址重新指向了 嘎哈啊   0x119  0x120的地址的字符串还是没有发生变化
// 只不过是str1的地址发生的重指向,指向了0x119
 

字符串常用的方法操作


转化大小写
  • toUpperCase转化成大写
var s = 'Hello';
s.toUpperCase(); // 返回'HELLO'
  • toLowerCase转化成小写
var s = 'Hello';
var lower = s.toLowerCase(); // 返回'hello'并赋值给变量lower
lower; // 'hello'
字符串的拼接
  • concat
var str = "hello";
var resulrt = str.concat("我是","cc");
console.log(resulrt);
//打印结果:
hello我是cc
字符串的替换
  • replace("要替换的字符串","被替换的字符串")

         var resulrt = hello我是cc
    var str1 =  resulrt.replace("cc","110");
    console.log(str1);
获取字符串的位置
  • indexOf("字符") 返回字符所在的位置
    • 它是从 前面开始数(从左边开始数), 而且只找第一个, 然后返回改字符的位置, 索引号都是从0开始的。 返回的是个数值。
    • 如果没有找到,则返回-1
 var txt = “abcdef”;
 alert(txt.indexOf(“d”))      结果就是   3

  • lastIndexOf(参数:索引字符串)
    • 从后面开始数,找到``第一个字符,但是索引号是 从 左边开始 数的
 var txt = “abcdfdef”;
 alert(txt.indexOf(“d”))      结果就是   5

获取子字符串
  • charAt(index) 一个字符串中返回指定的字符
 var str1 = "这是一个字符串";
   console.log( str1.charAt(4));  // 字
  • slice("开始位置","结束位置"),其中"结束位置" 可以省略
 var txt = "abcdfdef";
       alert(txt.slice(0,4)) ;
//结果是:abcd
从0的索引开始到4, 但是不包括4

  起始位置可以是负数  , 如果是负数,则是从 右边往左边开始取。
   var txt =”asdf”;
   txt.slice(-1)  结果是   f  

  • substr("开始位置","截取的个数")
    • 是指从起始位置开始,往后面数几个
 var txt = “abcdefghijk”;
 txt.substr(3,4); 

  • includes是否包含字符串 返回是一个Bool值
var str = "svdabc";
str.includes("a");

  • padStart("最大长度","填充的数据")

   var dt = new Date();

 var mm = dt.getMinutes();
//转化为字符串
 var str =  mm.toString(). padStart("2","0");

console.log(str)

// 分钟  02 

-padEnd()

例子

       var str = "122340.12345";
       var num =   str.indexOf(".") + 3;
        console.log(str.substr(0,num));


  • 字符串是可以看成多个字符组成的数组
var str = "hello";
    for (var i = 0; i < str.length; i ++) {
        console.log(str[I]);
    }
    
  • 应用
//找到这个字符串中所有的 o 出现的位置
    var str2 = "hello wod odd ott fbo nhyo";
    var index = 0;
    var key = "o";

    while ((index = str2.indexOf(key,index)) != -1){
            console.log(index);
            index+= key.length;
        
    }

str2.indexOf(key,index) 获取到o的index索引值,在索引值赋值给index,
只要index != -1说明还没有找完, index +=key.length,是让从找到o的下一个位置 继续寻找
//找到这个字符串中每个字符串出现了多少次
//思路:创建一个空对象,字母作为key,字母出现的次数作为Value
         var str3 = "whatOareYyouYnoYshaHleiHoHmyHgod";
         
         str3 = str3.toLocaleLowerCase();
        
         var obj = {};
         for (var i = 0; i < str3.length; i ++) {
            //获取到key
            var key = str3[i];
            //判断是否存在
            if (obj[key]) {
                //存在 说明已经出现过,次数加一
                obj[key]++;
            }else{
                //说明是第一次出现,value设置为1
                obj[key] = 1;
            }
         }
    
    
    for (var key in obj) {
        
        console.log(key +"出现的次数是:" + obj[key] );
    }

相关文章

  • js中的几点常用知识

    1.js中的字符串反转输出 js中的字符串反转输出的N种方法: 2.js中数组转字符串和字符串转数组 javasc...

  • JavaScript中的字符串

    @(javascript)[js字符串][toc] JavaScript中的字符串 字符串是JavaScript中...

  • JavaScript 字符串

    js字符串,js字符串的概述和声明,js字符串的特性,js字符串的常用方法,js字符串的拓展方法,js字符串的案例...

  • JavaScript 程序设计——基础篇 7-13

    7.字符串 对 JS 来说,网页中的文本都是字符串。在 JS 中在双引号(单引号)中的都是字符串。 “该号码可注册...

  • js去除字符串中的逗号

    js去除字符串中的逗号

  • React(loader)

    css-loader 把css转化为js字符串 style-loader 把js字符串放入.html中的 作为st...

  • 单引号和双引号

    JS中 js中单引号和双引号的区别(html中属性规范是用双引号,js中字符串规定是用单引号)(js中单引号区别和...

  • 数组检测

    检测是否是数组: 数组转字符串: 字符串转换数组: js对象转换成js字符串: js字符串转换成js对象:

  • 字符串创建

    JS中字符串有以下2种方式:

  • js判断字符串中是否有数字和字母

    js判断字符串中是否有数字和字母

网友评论

      本文标题:JS中的字符串

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