综合知识点

本文介绍了JavaScript中字符串和数组的基本操作方法,包括字符串的切割、替换、截取等,以及数组的增删改查、排序、过滤等功能,并探讨了常用数组函数的应用场景。

字符串对象

  1. str.split() 切割字符串转换为数组,参数是被切割的字符
  2. str.replace() 替换字符,参一用于匹配str中的字符,参二用于替换匹配结果 /[‘char’]/g选中所有
  3. str.substr() 截取字符片段,返回被截取的字符。参一是从第几个索引值开始,参二为截取字符长度
  4. str.slice() 截取字符片段,返回被截取的字符。参一是从第几个索引值开始,参二是到第几个索引值结束,不会被截取到
  5. str.substring 截取字符片段,返回被截取的字符。参一是从第几个索引值开始,参二是到第几个索引值结束,不会被截取到
  6. str.charAt() 根据索引值查询字符,返回被查询的字符,参数是索引值
  7. str.toLowerCase()将字符串全部变小写,原字符串不变,返回新字符串
  8. str.toUpperCase()将字符串全部变大写,原字符串不变,返回新字符串
  9. str.charCodeAt() 查询字符编码值,可以配合索引值查询,也可以直接查询某个字符,返回字符编码值

数组对象

  1. arr.splice() 数组的增删改 返回被删除的元素。参一是从第几个索引值开始,参二是删除元素长度,参三以后都是添加的元素
  2. arr.pop() 从数组尾部删除元素 返回被删除的元素
  3. arr.shift() 从数组头部删除元素,返回被删除的元素
  4. arr.push() 从数组尾部添加元素,返回数组长度,参数是被添加的元素,可以添加多个。
  5. arr.unshift() 从数组头部添加元素,返回数组长度,被添加的元素,可以是多个。第一个添加的元素索引值为0。
  6. arr.concat() 合并元素,返回合并后的结果,可以添加多个参数合并
  7. arr.reverse() 颠倒数组。
  8. arr.toString() 将数组转化为字符串,数组本身不变,返回值是字符串
  9. arr.join() 将数组转化为字符串,返回字符串,参数是字符类型,将逗号替换为参数

数组对象共用的,strArr.indexOf() 查询元素(字符)是否存在,存在返回元素(字符)所在的索引值,不存在返回-1,参数是被查询的元素(字符)

数组函数

  1. arr.some(function(item){}) 检查数组中是否存在满足条件的元素,存在返回true,不存在返回false ,item是数组中元素
  2. arr.filter(function(item,index){}) 过滤数组中满足条件的元素,返回给新数组,回参一是数组中元素,回参二是元素的索引值
  3. arr.forEach(function(item,index){}) 遍历数组,无返回值,回参一是数组中元素,回参二是元素的索引值
  4. arr.map(function(item,index){}) 数据重组,返回新数组,原数组不变。map是返回表达式返回值,filter是返回满足条件的元素 回参一是数组中元素,回参二是元素的索引值
  5. arr.reduce(function(num,value,index,array){},0) 累加运算,返回累加值。参一回调函数,参二给回参一赋值,回参一是累计运算结果,回参二是参与运算的操作数,回参三是元素的索引值,不是从0开始的,回参四是原数组
  6. arr.sort(function(a,b){}) 排序 ,a和b都是数组中的元素。a - b 是从小到大 b - a 是从大到小
  7. arr.find(function(item, index, arr))没有符合条件的元素返回undefined
判断数据类型
  1. Array.isArray()判断一个数据是否是数组,参数是要检查的元素,是数组返回true,不是数组返回false
  2. arguments 是类数组,存放所有实参
  3. Array.from() 可以将类数组转化为真数组,参数是类数组或者字符串
  4. isNaN() 判断数据是否为NaN,参数要查询的数据,返回boolean值
  5. typeof 基本类型判断,不能区分数组,对象,null
  6. obj.constructor === Object 验证一个数据是否是对象,返回Boolean值
  7. data1 instanceof Object 验证一个数据可能是数组,可能是对象

obj.hasOwnProperty(key)判断对象中是否存在某个属性

拷贝

  1. 深拷贝:拷贝后一个变量发生改变不会影响另一个数据
  2. 浅拷贝:拷贝后任意一个发生改变另一个也会发生改变
    数据存放,基本数据类型是存放在栈中的,引用数据类型存放在堆中
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值