正则5大Api+http缓存机制+事件委托+在地址栏中获取数据

85 阅读1分钟

正则5大Api

//str

//返回str中是否包含reg定义的子串

const bool = /\d+/.test("str")
//返回执行匹配的结果【整体子串 第一个括号匹配到的子串,第二个括号匹配到的子串】
const subStrs = /\d+/.exec("str")

//检索:返回首个自串出现的下标

const index = "str".search(reg)

//匹配:返回所有匹配到的子串形成的数组

const subStr = "str".match(reg)

//替换:将所有匹配到的子串替换为根据函数计算而来的新子串

const newStr = "str".replace(
		reg,//通常有全局模式
		function(subStr){return "替换subStr的新子串"}//每个匹配到的子串执行一次回调,返回替换的新子串
)

http缓存机制

微信图片_20220723105302.jpg

事件委托

  • 定义:子元素将dom事假的处理委托给父元素
  • 场景:子元素众多尤其是动态增减时,为了避免创建过多的事件处理器,为了避免同步的增减事件监听器,使用事件委托; 原理、优势:节约内存+方便管理+防止内存泄漏;
  • API:通过e.target的特征判断时间发生在那个子元素的身上(特征:内容,样式,标签名。。。。。。)

提取URL中的查询参数

function getParams(url){
	const obj  = {}
        //使用正则(全局模式)
	const reg = /\w+=\w+/g

	url.match(reg).forEach(
        (Item)=>{let [key, value] = Item.split("=")
	
	obj[key] =value}

)
	return obj 

}


console.log(getParams("/add?a=123&b=456#sdf"));