1.new构造函数的时候发生了什么
- 创建了一个空对象
- 将构造函数中的this指向这个空对象
- 执行构造函数中的代码
- 返回这个对象
2. 描述一下你对原型和原型链的理解
每个对象自带一个属性__proto__,属性的值是一个对象, 这个对象叫做原型;每个函数自带一个属性prototype, 属性的值是一个对象, 这个对象也叫原型.
- 对象默认可以使用原型中的属性和方法
通常使用函数.prototype添加方法, 给这个函数的实例对象使用.
对象都有原型,原型是一个对象, 所以原型也有原型,...这样形成的一条链式结构叫原型链
- 对象访问属性和方法的时候, 现在对象内查找, 对象内有, 就访问到了, 对象没有, 就到对象的原型中查找, 原型中有, 就访问到了, 原型没有, 就到原型的原型中查找, ...
直到顶级原型,顶级原型没有, 就返回undefined
3, 正则表达式的作用
1. 验证字符串中是否有符合规则的部分
- 正则.test(字符串) - 返回布尔值
2. 将字符串中符合规则的部分提取出来
- 正则.exec(字符串)
- 字符串.match(正则)
3. 将字符串中符合规则的部分替换成新内容
- 字符串.replace(正则, 新内容)
4. 构造函数中this的含义
this 是函数内部的一个对象, 当该函数被某个对象调用时, this的值就是某个对象