
js
文章平均质量分 82
Estelle_qi
这个作者很懒,什么都没留下…
展开
-
js 中的6种继承方式
1、原型链的继承(ES5)让新实例的原型等于父类的实例。function Cat(){}Cat.prototype = new Animal();Cat.prototype.name = 'cat';特点实例可继承的属性有:实例的构造函数的属性,父类构造函数属性,父类原型的属性缺点1、无法实现多继承2、新实例无法向父类函数传参3、新实例共享父类属性,一个实例修改原型属性,其他实例也会被修改2、构造继承(ES5)使用父类的构造函数来增强子类实例,用 call() 和 apply()原创 2021-04-05 11:06:35 · 235 阅读 · 2 评论 -
关于js中的this
文章目录this指向全局作用域中的this非箭头函数中的this箭头函数中的this特点事件绑定中的this定时器中的this构造函数中的thisthis 绑定形式默认绑定隐式绑定隐式丢失显式绑定三者异同new绑定特点this 特点this指向全局作用域中的thisthis ——> window非箭头函数中的this非箭头函数的 this 指向在函数被调用时绑定的,this ——> 调用的对象。var obj = { fn1:function() { console.lo原创 2021-04-05 10:46:32 · 369 阅读 · 0 评论 -
javascript的原型、原型链
文章目录原型概念作用属性prototype__ proto __Constructor方法hasOwnProperty()in 操作符原型链作用特点ES6 Class使用静态方法静态属性实例属性原型概念每一个javascript对象创建的时候,就会关联另一个对象,这个对象就是原型。作用原型是为了解决每个对象独占方法的问题,原型方法可以做到多个对象共享数据,对象可以从原型继承一些方法和属性。属性prototypeprototype 是函数才有的属性,这个属性指向函数的原型对象。prototyp原创 2021-04-04 19:41:21 · 382 阅读 · 0 评论 -
前端面试常见手写代码集合
手写代码集合1、节流和防抖节流防抖2、改变this指向的函数bindapplycall三者异同3、promise概念状态实现一个promisepromise.allpromise.race4、深拷贝5、发布订阅模式6、new7、Object.create8、Ajax9、Jsonp10、路由11、函数柯里化12、数组扁平化13、数组去重14、instanceof15、reduce16、sleep1、节流和防抖节流在 s 秒内即使被触发多次,也只能执行一次。function throttle(fn,原创 2021-03-30 11:16:38 · 1005 阅读 · 0 评论 -
Event Loop
Event Loop浏览器或Node的一种使得js单线程运行时不会阻塞的一种机制,也就是使用异步的原理。js有一个主线程(main thread)和调用栈(call-stack),所有的任务都会被放到调用栈中,等待主线程执行完毕后,再依次执行栈中的任务,直到栈被清空。宏任务和微任务任务队列分为两种:macro-task、micro-taskmacro-task 包含任务:script(主程序代码),setTimeout, setInterval,setImmediate,I/O,UI render原创 2021-03-28 16:40:25 · 83 阅读 · 0 评论 -
JS的数据类型
基本数据类型Number、String、Boolean、undefined、object、Null、Symbol(ES6)引用数据类型Object (Data、function、Array)区别1、基本数据类型的值是不可变的,改变的是指针的指向; 但引用类型可以改变 ;2、基本数据类型不可以添加属性和方法;但引用类型可以;3、基本数据类型的赋值是简单赋值,如果从一个变量向另 一个变量赋值基本类型的值,会在变量对象上创建一个新值,然后把该值复制到为新变量分配的位置上;引用数据类型的赋值是对象引用原创 2021-03-28 15:52:07 · 127 阅读 · 0 评论