• Javascript-字符串对象


    一.基本包装类型:

    var str = 'andy';

    console.log(str.length); //结果为4

    //其执行的过程:

    //1.生成临时变量,把简单的数据类型变成复杂的数据类型

      var temp = new String('andy');

    //2.赋值给我们声明的字符变量

      str = temp;

    //3.销毁临时变量

      temp = null;

    把简单的数据类型包装成复杂的数据类型,这样基本数据类型就有了属性和方法(对象)。

    二.字符串的不可变性。

    var str = 'abc';
    str = 'hello';
    //当重新给str赋值时,常量'abc'不会被修改,依然在内存中
    //重新给数组串赋值,会重新在内存中开辟空间,这个是字符串的不变性
    //如果大量赋值会占大量内存出现卡顿
    var str = '';
    for(i=0;i<=100;i++){
    str +=i;
    }
    console.log(str);  //这个结果会花大量的时间来显示,因为需要不断地开辟新的空间
                      
    

     三.根据字符返回位置

      indexOf('要查找的字符‘’,开始的位置)   返回指定内容在字符串中的位置,如果找不到就返回-1,开始的位置是index索引号。

      lastindexOf()   从后往前找,只找第一个匹配的。

    //案例
    var str = "abcoefoxyozzopp";
    var index = str.indexOf('o');
    var num = 0;
    while (index !==-1) {
        console.log(index);
        num++;
        index = str.indexOf('o',index + 1);
     }
    console.log('o出现的次数:' + num);

     四.根据位置返回字符

    1.charAt(index) 返回指定位置的字符(index 字符串的索引号)  【 str.charAt(0) 】

    2.charCodeAt(index) 获取指定位置字符的ASCll码(index索引号)【 str.charCodeAt(0)】

    3.str[index] 获取指定位置的字符  (html5,IE8+支持和charAt()等效)

    五.字符串操作方法(重点)

    1.concat(str1,str2,str3....)  concat 方法用于连接两个或多个字符串,拼接字符串,等效于+,+更常用。

    2.substr(start,length)  从start位置开始,length取的个数(重点)

    3.slice(star,end) 从start位置开始,截取到end位置,end截取不到(他们两个都是索引号)

    4.substring(start,end)  从start位置开始,截取到end位置,end截取不到  基本和slice相同  但是不接受负值。

    六。其他方法

    1.替换字符 replace (‘被替代的字符’,‘替换为的字符’)

    2.字符转换为数组split(‘分隔符’)

    3.toUpperCase()  //转换大写

    4.toLowerCase()  //转换为小写

  • 相关阅读:
    [LeetCode]Power of N
    uboot学习之uboot启动流程简述
    [LeetCode]Palindrome Pairs
    [LeetCode]Gray Code
    快速排序 partition函数的所有版本比较
    Linked List Cycle && Linked List Cycle II
    Simplify Path leetcode
    Pow(x, n) leetcode
    Swap Nodes in Pairs leetcode
    Multiply Strings leetcode
  • 原文地址:https://www.cnblogs.com/showlgfcode/p/13823746.html
Copyright © 2020-2023  润新知