![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
js
文章平均质量分 51
小虎牙大萌眼睛
坚持写博客是一种成长也是一种生活态度
展开
-
函数之闭包
闭包一个函数对周围状态的引用,使他们捆绑在一起当内部函数以某一种方式被任何一个外部函数作用域访问时,一个闭包就产生了。function outside() {{ function inside() { } return inside; //outside引用了inside产生了闭包}外部变量被内部的函数引用产生闭包function outside() {{ let x = 1; function inside() { console.log(x); } in原创 2021-10-19 15:59:42 · 63 阅读 · 0 评论 -
函数之形参和实参
函数什么是函数?函数的组成原创 2021-10-18 18:24:07 · 360 阅读 · 0 评论 -
函数的之作用域链
函数形参实参函数作用域在函数体定义的变量,不能被外部访问。但是在函数体中可以访问外部的变量或者函数。作用域链函数可以被多层嵌套。例如,函数A可以包含函数B,函数B可以再包含函数C。B和C都形成了闭包,所以B可以访问A,C可以访问B和A。因此,闭包可以包含多个作用域;他们递归式的包含了所有包含它的函数作用域。这个称之为作用域链。(稍后会详细解释)递归将递归算法转换为非递归算法是可能的,不过逻辑上通常会更加复杂,而且需要使用堆栈。事实上,递归函数就使用了堆栈:函数堆栈。...原创 2021-10-15 11:32:31 · 77 阅读 · 0 评论 -
Promise其他方法的实现
原生Promise.resolve 和 Promise.reject描述resolve具有等待效果reject不具有等待效果Promise.resolve(new Promise((resolve,reject)=>{ setTimeout(()=>{ resolve('resolve') },0)})).then((v)=>{ console.log(v, 'resolve')})Promise.reject(new Promis原创 2021-10-13 16:24:25 · 113 阅读 · 0 评论 -
前端之深入理解dom事件
EventTarget.addEventListener()EventTarget.addEventListener(type, eventListener, options)type: 事件类型, click ,dbclic, mouseenter, mouseleave,blur, change, input等;eventListener:事件监听函数或者带有handleEvent属性(值为函数才可以)的对象;options: 对象或者boolean; boolean代表此原创 2021-10-09 17:17:11 · 113 阅读 · 0 评论 -
前端之dom事件流
问题给一个dom元素绑定两个点击事件,一个冒泡,一个捕获。一共会执行几次,先执行哪个?共执行两次执行顺序分以下两种情况:1、dom元素为目标元素,不区分是冒泡还是捕获,执行顺序和绑定事件的顺序保持一致<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge原创 2021-10-09 16:16:01 · 113 阅读 · 0 评论 -
数据的深拷贝方法
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="...原创 2019-04-28 15:01:25 · 725 阅读 · 0 评论 -
数组去重的七种方法
第一种:利用对象中属性的唯一性对数组进行去重let arr = [1, 3, 4, 5, 1, 3, 4, 0,9,1,2,3,4,6,7,8,4]; function useObjDistinctArr(arr) { let obj = {}; for (let i = 0; i < arr.length; i++) {...原创 2019-01-09 19:38:56 · 267 阅读 · 0 评论 -
初次使用vue开发插件遇到的坑
<style lang="less" scoped> .alert{ background: red; position: fixed; z-index: 9999; width: 100%; height: 100%; left: 0; top:0; }</style><template...原创 2018-11-16 11:57:10 · 489 阅读 · 0 评论 -
克隆字符串你知道多少?
var str1 = '123456';//=>克隆字符串/*substring(负数),表示克隆,只能有一个参数console.log(str1.substring(-2));//=>克隆console.log(str1.substring(-1));//=>克隆,console.log(str1.substring());console.log(str1.subs...原创 2018-06-29 18:42:38 · 445 阅读 · 0 评论 -
url问号传参对应的处理
String.prototype.queryURLParameter=function queryURLParameter() { var querySym=this.indexOf('?'); var HashSym=this.indexOf('#'); var queryArr=this.substring(querySym+1,HashSym).split('&'); ...原创 2018-06-29 18:39:03 · 2476 阅读 · 0 评论 -
数组去重
/** 思想* 1、定义一个第三方式数组俩存放过滤后的每一项* 2、利用indexOf(this[i])来检测检测数组中的这一项是否已经在第三方存在,* 3、不存在的话就把当前项存放的第三方数组arr中* 4、返回第三方数组(即为已经去重的数组)* */Array.prototype.distinct=function () { var arr=[]; for (var...原创 2018-06-06 16:02:56 · 87 阅读 · 0 评论 -
js实现多位数组转化为一位数组
var arr=[1, [2, [3], 4], 5];/** 先把数组按照都好拆分成字符串,join(',)* 在把字符串按照逗号拆分成数组,split(',')* 此时数组中的每一项都为字符串* 用for of把每一项转化正数字Number(数组中的每一项)*/Array.prototype.changeArray=function changeArray() { va...原创 2018-06-06 15:57:19 · 756 阅读 · 0 评论