javascript常用的api

Object对象

//完整克隆一个对象,还拷贝对象原型的属性
var n = Object.assign(Object.create(Object.getPrototypeOf(拷贝的对象)), 拷贝的对象);

//可以用?.来获取对象属性,如果属性不存在不会报错,属性如果存在会赋值成功
var res = message?.body?.user?.firstName;
//判断对象方法是否存在,如果存在就立即执行
myfunc.run?.()   

Object.keys()            //获取对象的所有可枚举的属性或者方法
Reflect.ownKeys()           //获取对象的所有属性或方法(包括Symbol属性方法)
Object.getOwnPropertyNames()   //获取对象的所有属性或方法(不包括Symbol属性方法)
Object.getOwnPropertySymbols()    //获取对象的所有Symbol属性或Symbol方法
Object.entries()        //获取对象的键值对数组(不包括Symbol)

Object.fromEntries()     //将键值对数组转为对象
Object.fromEntries(new URLSearchParams('?name=haha&class=1'))  //将字符串转为对象

Array数组

arr7.push(...arr6)  //把arr6拆分然后把每个元素push到arr7
arr8 = [...arr7]    //复制arr7数组,深拷贝
arr9 = [...arr7, ...arr8]   //合并arr7,arr8数组

entries()    //返回该数组的所有键值对,value()是键值,keys()是键名
join()  //将数组中元素拼接成一个字符串并返回,参数是分隔符,默认以逗号分隔
push()  //在数组尾部添加,参数可以是一个或多个,多参数之间使用逗号隔开,返回值是新数组的长度,会改变原始数组
pop()        //删除数组最后一项,返回被删除的元素,会改变原始数组
shift()     //删除数组第一项,返回被删除的元素,会改变原始数组
unshift()    //在数组头部添加,返回数组长度,会改变原始数组
fill("hi",1,3)    //在数组1到3的位置的元素依次替换成hi
flat(Infinity)    //将数组里嵌套多层的数组拉平,变成一维数组。参数Intinity表示不管有多少层嵌套统统转成一维数组
flatMap()     //对原数组的每个元素执行一个函数,然后对返回值组成的数组执行flat()方法。
concat()    //数组合并,参数可以是多个数组
slice()      //从数组中取出一个范围(切片),参数是起始位置和结束位置
splice()    //从数组中取出一个范围(切片)并从原始数组中删除掉,会改变原始数组
copyWithin(0,3,4)    //把数组从3到4的位置切片截取移到0的位置并覆盖
map()      //对数组的每一项运行给定函数,返回每次函数调用的结果组成的数组
forEach()    //对数组中的每一项运行给定函数,这个方法没有返回值。本质上与for循环迭代数组一样。如果需要有返回值,一般使用map方法

String字符串

//字符串中嵌入变量
let name="Bob";var time="today";
var str4 = `Hello ${name}, how are you ${time}?`;

indexOf(value,[fromIndex])    //获取第一次出现字符的下标,从fromindex开始找
slice(1,5)                     //字符串切片,取出1-5位置的字符
split(param)            //以指定的字符分割字符串,返回分割完成的数组
match(正则或字符)       //在字符串中查找字符,返回一个数组,matchAll返回所有匹配
replace(正则或字符,newstring)     //替换字符中的指定字符,不改变原始字符串

RegExp正则表达式

var reg = new RegExp('href="(.*?)"','g')  //g : global 全局匹配
reg.exec()  //用以提取href=""中间的内容,注意每次只返回一个结果,如果提取全部需要for循环调用
reg.lastIndex = 0  //表示下一次匹配的起始索引
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值