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