31、组件开发的优点: 组件更加清晰直观、组件关系更加清晰、结果可以预测 最小化重绘(diff算法)、避免不必要的DOM操作 32、什么是面向对象: 面向对象是一种编程思想,这种编程思想会直接将生活逻辑映射到我们的程序中,如果我们实现面向对象编程,必须依赖类和对象的语法去实现,但是在ES6之前没有类,所以我们使用构造函数去实现类的存在,通过类和对象实现面向对象编程,具有继承、封装、多态的特点 33、ES5新增语法: (1)严格模式: ①全局变量声明必须加var ②This无法指向全局对象 ③函数内重名属性 ④Arguments对象不准许被动态改变、永远只储存实参 ⑤新增保留字:implements, interface, let, package, private, protected, public, static, yield。 34、深拷贝与浅拷贝: 浅拷贝:浅拷贝仅仅是指向被复制的内存地址,如果原内容中的对象被改变了,那么浅拷贝复制出来的对象也会相应的改变(用的是同一个地址) 深拷贝:在计算机中开辟了一块新的内存地址用于存放复制的对象,当原内容改变是拷贝的不会发生变化(用的是不同的地址) 35、let、var、const: let: (1)只要遇到大括号,就形成作用域 (2)let声明的变量,一个作用域只能声明一次 (3)let声明的变量不会声明提升,在let声明之前使用变量,会报错,这个区域叫做暂时性死区 var:通过var声明的变量,只有在函数中声明,才会形成作用域,除函数以外的大括号,并不会形成作用域。 const: (2)const声明的变量,一旦声明就不能更改 (3)const声明的变量,必须赋值 (4)let有的特点他都有 【注】let、const都是ES6新增,ES6将声明变量做的更加精致