jsday8作用域-03

12.数组对象

  • 数组转换为字符串

    方法名 说明 返回值
    tostring() 把数组转换成字符串,逗号分隔每一项 返回一个字符串
    join('分隔符') 方法用于把数组中的所有元素转换为一个字符串 返回一个字符串

13.基本包装类型

  • 1、生成临时变量,把简单数据类型包装成为复杂数据类型

    var str = 'abc';
    console.log(str.length);  //基本包装类型
    var temp = new String('abc');  //复杂数据类型
    
  • 2、把临时变量的值给str

    str = temp;
    
  • 3、销毁这个临时变量

    temp = null;
    

14.字符串对象

  • 字符串的不可变性

    • 指的是里面的值不可变,虽然看上去可以改变内容,但其实是地址变了,内存中新开辟了一个内存空间
  • 根据字符返回位置

    • 字符串所有的方法,都不会修改字符串本身(字符串是不可变的),操作完成会返回一个新的字符串
  • 根据位置返回字符

    方法名 说明 使用
    charAt(index) 返回指定位置的字符(Index 字符串的索引号) charAt(0)
    charCodeAt(index) 获取指定位置处字符的ASCII码(index索引号) charCodeAt(0)
    str[index] 获取指定位置处字符 HTML5、IE8+支持和charAt()等效
  • 如何判断是否有某种属性:对象['属性名']

  • 字符串操作方法

    方法名 说明
    concat(str1,str2,...) 用于连接两个或多个字符串。拼接字符串,等效于+,+更常用
    substr(start,length) 从start位置开始(索引号)截取,length 取的个数
    slice(start,end) 从start位置开始,截取到end位置,end取不到(start和end是索引号)
    substring(start,end) 从start位置开始,截取到end位置,end取不到 基本和slice相同,但是不接受负值
  • 其他方法

    • 替换字符 replace('被替换的字符','替换为的字符') (单独使用只会替换第一个字符)
    • 字符转换为数组 split('分隔符')
    • toUpperCase() //转换为大写
    • toLowerCase() //转换为小写

15.简单类型和复杂类型

  • 简单类型(值类型):简单数据类型/基本数据类型,在存储时变量中存储的是值本身,因此叫做值类型
    • string , number, boolean, undefined, null(返回的是一个空的对象,object)
  • 复杂类型(引用类型):复杂数据类型,在存储时变量存储的仅仅是地址(引用),因此叫做引用数据类型
    • 通过new 关键字创建的对象(系统对象、自定义对象),如Object, Array, Date等

16.堆和栈

  • 栈(操作系统):由操作系统自动分配释放存放函数的参数值、局部变量的值等。其操作方式类似于数据结构中的栈;简单数据类型存放在栈里面,里面直接开辟一个空间存放值
  • 堆(操作系统):存储复杂数据类型(对象),一般由程序员分配释放,若程序员不释放,由垃圾回收站机制回收;复杂数据类型存放在堆里面
  • 复杂数据类型首先在栈里面存放地址,用十六进制表示,然后这个地址指向堆里面的数据

原文地址:https://www.cnblogs.com/lzy2000----/p/15104551.html