07 JS CORE String字符串、内置对象、包装类型

正课:
1. ***String
   什么是:
***内置对象:
***包装类型:
   字符串API:

1. 什么是: 多个字符组成的只读字符数组(本质上为数组)
      vs 数组:

       相同:1、都能用下标i访问每个元素/字符
                   2、都有length属性记录元素/字符个数
                   3、都支持slice()选取子数组/子字符串

                   4、都能用for循环便利每个元素/字符
      不同: 1、数组可随意修改原数组,但字符串是只读字符数组,数组中凡是直接修改原数组的API,字符串都不能用!

               2、类型不同:数组是Array,字符串是String,两者API不通用!;

           

            

2. 内置对象: ES标准中规定的,浏览器厂商已经实现的现成的对象和API
    11个: Number  String  Boolean   ------------包装类型
              Array Date RegExp Math
              Error
              Function  Object
              Global(全局  浏览器中被替换为window)
3. 包装类型对象:
    什么是: 专门封装基础类型的值,并提供操作基础类型值的API的对象
    为什么: 基础类型的值,本身不包含任何API功能
    何时: 只要试图对基础类型的值调用API时,都会自动创建对应类型的包装类型对象来封装基础类型的值。
    调用后: 包装类型对象,自动释放!
       比如: var n=345.678;
                n.toFixed(2)=>345.678.toFixed(2)
                                    =>new Number(345.678).toFixed(2)
4. String的API:
***所有字符串API都无权修改原字符串,只能返回新字符串!
   大小写转换: 将字符串中所有英文字母转为统一的大小写
      何时: 只要不区分大小写时,都要先转为一致的大小写,再判断。 比如: 用户名,邮箱地址,验证码
      如何: str.toUpperCase() //都转大写
               str.toLowerCase() //都转小写

   获得指定位置的字符: str[i]
       var char=str.charAt(i);
       获得指定字符的unicode号:
       var unicode=str.charCodeAt(i); //省略i,默认是0
           将unicode号反向转回文字
           var char=String.fromCharCode(unicode);

    

   

    选取子字符串: str.slice(starti,endi+1)
       str.substring(starti,endi+1) 不支持负数参数
       str.substr(starti,n): 选取starti开始的n个元素

猜你喜欢

转载自blog.csdn.net/Pony_18/article/details/81773547