
JavaScript学习笔记
JavaScript学习笔记,总结重要知识点
输出是最好的学习方式
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
js中 利用 == 进行类型转换的内部实现机制和步骤
一道关于==的面试题 let a =? if(a==1 && a==2){console.log(a)} 问a =? 能让if的条件成立? 该题目的考察点是== 在进行判断时候的类型判断。 javascript双等号引起的类型转换,js隐性类型转换步骤 这篇文章写的很好 ...原创 2021-04-08 10:57:29 · 218 阅读 · 0 评论 -
节流和防抖
周期长且容易触发的事件节流 – 可以让高频执行的重复事件,一段时间内只执行一次。 比如用户的点击事件 概念:高频事件触发,但在n秒内只执行一次,所以节流就会稀释函数的执行频率。 如果一个事件完成需要一定的周期,那么在这个周期内部用反复触发事件,因为触发了也没用,也不会立刻返回结果,所以需要给事件加一个锁。只有事件一个周期执行完之后,才可以释放锁。 方法就是 用一个全局变量当做一个锁, 用一个定时器来让锁在一定时间后打开。 事件执行完后加锁 如果进入方法发现锁没有打开,则直接返回。 <!DOCT原创 2021-04-01 15:20:34 · 111 阅读 · 0 评论 -
js字符串的常用方法
该文章主要总结了js中字符串的常用方法,其中包含 字符方法。拼接,截取,搜索字符串和替换字符串等。原创 2021-03-31 15:12:36 · 595 阅读 · 0 评论 -
js 的DOM基础
事件属性 charCode / keyCode onkeydown: e.keyCode 有值 onkeyup: e.keyCode 有值 onkeypress: e.keyCode 为0 charCode是字符码 keyCode是机器码 不分大小写 因为大小写在键盘上是同一个按钮 阻止事件传播& 阻止默认event 通过e.stopPropagation() 阻止传播 通过 e.preventDefault 阻止原来的event 事件传播 事件捕获 addEventListener() 第三原创 2021-03-31 14:57:15 · 148 阅读 · 0 评论 -
js常用数组总结
数组的数据结构相关的方法 数组的特性 数组的常用方法及注意事项原创 2021-03-30 16:53:21 · 129 阅读 · 0 评论 -
js异步
异步存在的原因 js单线程 遇到请求资源 或者 延时执行的时候,如果没有异步,页面会卡死。 异步的好处 异步的好处是:不会阻塞代码的执行 异步和同步的区别 异步不会阻塞代码执行,同步会阻塞代码执行 。比如alert就是同步的。 异步的应用场景 等待的情况需要异步,等待的时候,不要阻塞代码执行。 ajax 定时任务 网络请求 异步的毁掉地狱如何解决 通过promise解决 ,把多层的回调地狱改变为单层的串联。then 的写法 ...原创 2021-02-22 20:37:02 · 205 阅读 · 0 评论 -
JavaScript中this的指向那个对象呢?
this的取值是在函数执行时候决定的,不是在函数定义的时候决定的。 function fn1(){ console.log('this is----------------------',this) } fn1() fn1.call({x:100}) const fn2 = fn1.bind({x:200}) fn2() 以上函数打印结果分别为 Object 、{x:100},{x:200} 注意 通过两种方式可以改变函数this的指向: call和bind,bind是返回一个新的函数,而call是直原创 2021-02-21 17:12:34 · 180 阅读 · 0 评论 -
闭包
闭包 自由变量的查找,是在函数定义的地方,向上级作用域查找。 不是在执行的地方 作用域分为三种: 全局作用域 函数作用域 块级作用域 -->{} function print(fn){ let a = 200 fn() } let a =100 function fn(){ console.log(a) } print(fn) function create(){ let a =100 return function(){ console.log(a) } } let fn =原创 2021-02-21 16:53:03 · 192 阅读 · 0 评论 -
原型和原型链
在js中,class只是一个语法糖 ,本质是function 隐式原型和显示原型 [ proto and prototype] 每个class 都有显示原型,每个实例都有隐式原型,每个实例的隐式原型指向class的显示原型。 实例在执行时,先找自身的属性和方法,如果找不到,再去隐式原型中找属性和方法。 对于有继承关系的类,子类有隐式原型,指向父类的显示原型。 因为所有的类都是继承Object类的,所有所有的类既有显示原型,就是自己类的方法,还有隐式原型,就是自己父类的方法。 值得注意的是,object类的因原创 2021-02-21 11:24:31 · 147 阅读 · 0 评论 -
javascript如何实现继承
继承的两种方式,js只支持一种,为什么呢? 继承分为接口继承和实现继承,很多面向对象的语言都支持这两种继承方式。 接口继承 和 实现继承的区别 接口继承只继承方法签名。派生类只继承成员函数的接口(也就是声明); 实现继承继承实际的方法。 JS的函数因为没有签名(类似于变量的声明,只有声明,没有实现,叫签名,java支持函数的签名),因此不能实现接口继承,ECMAScript只能实现 实现...原创 2020-04-22 14:23:31 · 216 阅读 · 1 评论