字符串对象
- str.split() 切割字符串转换为数组,参数是被切割的字符
- str.replace() 替换字符,参一用于匹配str中的字符,参二用于替换匹配结果 /[‘char’]/g选中所有
- str.substr() 截取字符片段,返回被截取的字符。参一是从第几个索引值开始,参二为截取字符长度
- str.slice() 截取字符片段,返回被截取的字符。参一是从第几个索引值开始,参二是到第几个索引值结束,不会被截取到
- str.substring 截取字符片段,返回被截取的字符。参一是从第几个索引值开始,参二是到第几个索引值结束,不会被截取到
- str.charAt() 根据索引值查询字符,返回被查询的字符,参数是索引值
- str.toLowerCase()将字符串全部变小写,原字符串不变,返回新字符串
- str.toUpperCase()将字符串全部变大写,原字符串不变,返回新字符串
- str.charCodeAt() 查询字符编码值,可以配合索引值查询,也可以直接查询某个字符,返回字符编码值
数组对象
- arr.splice() 数组的增删改 返回被删除的元素。参一是从第几个索引值开始,参二是删除元素长度,参三以后都是添加的元素
- arr.pop() 从数组尾部删除元素 返回被删除的元素
- arr.shift() 从数组头部删除元素,返回被删除的元素
- arr.push() 从数组尾部添加元素,返回数组长度,参数是被添加的元素,可以添加多个。
- arr.unshift() 从数组头部添加元素,返回数组长度,被添加的元素,可以是多个。第一个添加的元素索引值为0。
- arr.concat() 合并元素,返回合并后的结果,可以添加多个参数合并
- arr.reverse() 颠倒数组。
- arr.toString() 将数组转化为字符串,数组本身不变,返回值是字符串
- arr.join() 将数组转化为字符串,返回字符串,参数是字符类型,将逗号替换为参数
数组对象共用的,strArr.indexOf() 查询元素(字符)是否存在,存在返回元素(字符)所在的索引值,不存在返回-1,参数是被查询的元素(字符)
数组函数
- arr.some(function(item){}) 检查数组中是否存在满足条件的元素,存在返回true,不存在返回false ,item是数组中元素
- arr.filter(function(item,index){}) 过滤数组中满足条件的元素,返回给新数组,回参一是数组中元素,回参二是元素的索引值
- arr.forEach(function(item,index){}) 遍历数组,无返回值,回参一是数组中元素,回参二是元素的索引值
- arr.map(function(item,index){}) 数据重组,返回新数组,原数组不变。map是返回表达式返回值,filter是返回满足条件的元素 回参一是数组中元素,回参二是元素的索引值
- arr.reduce(function(num,value,index,array){},0) 累加运算,返回累加值。参一回调函数,参二给回参一赋值,回参一是累计运算结果,回参二是参与运算的操作数,回参三是元素的索引值,不是从0开始的,回参四是原数组
- arr.sort(function(a,b){}) 排序 ,a和b都是数组中的元素。a - b 是从小到大 b - a 是从大到小
- arr.find(function(item, index, arr))没有符合条件的元素返回undefined
判断数据类型
- Array.isArray()判断一个数据是否是数组,参数是要检查的元素,是数组返回true,不是数组返回false
- arguments 是类数组,存放所有实参
- Array.from() 可以将类数组转化为真数组,参数是类数组或者字符串
- isNaN() 判断数据是否为NaN,参数要查询的数据,返回boolean值
- typeof 基本类型判断,不能区分数组,对象,null
- obj.constructor === Object 验证一个数据是否是对象,返回Boolean值
- data1 instanceof Object 验证一个数据可能是数组,可能是对象
obj.hasOwnProperty(key)判断对象中是否存在某个属性
拷贝
- 深拷贝:拷贝后一个变量发生改变不会影响另一个数据
- 浅拷贝:拷贝后任意一个发生改变另一个也会发生改变
数据存放,基本数据类型是存放在栈中的,引用数据类型存放在堆中