面向对象是一种注重结果的思维方式
面向对象 : 封装、继承
内存浪费 + 变量污染
- 请简述原型对象、构造函数、实例对象三者之间的关系(三个属性)
构造函数: prototype指向原型对象
原型对象 : constructor指向构造函数
实例对象: __proto__指向原型对象
原型链
静态成员: 函数自己的成员
实例成员: 实例对象的成员
谁调用我,我就指向谁
函数名()? ? ? ???????????????:指向window
?对象名.方法名()? ? ? ? :? 指向对象
new 函数名()? ? ? ? ? ? ?: 函数创建的实例
- 请说说call apply bind的区别及对应应用场景(面试必问点)
传参方式不同 : call是单个传参,apply是数组、伪数组传参
执行机制不同 : call和aplly会立即执行, bind不会立即执行而是得到一个修改this的新函数
闭包 是 一个可以访问其他函数内部变量的函数
函数 + 上下文引用
解决变量污染
递归函数是一个在函数内部调用自己的函数
浅拷贝和深拷贝
遍历dom树
筛选数组:arr.filtre()
检测是否所有元素满足条件(开关法) : arr.every()
遍历数组 : arr.forEach()
数组叠加(求累加和) : arr.raduce()???????
|