网站改版公司哪家好,深圳 倡导居家办公,公司建设网站,企业宣传视频模板免费下载在JavaScript中#xff0c;new操作符主要用于创建一个对象示例。通过new操作符#xff0c;可以创建一个新的对象#xff0c;并将这个对象的原型链只想一个构造函数的原型对象#xff0c;然后执行构造函数中的代码初始化这个新对象。 常见的new的使用为 new Array() new Set… 在JavaScript中new操作符主要用于创建一个对象示例。通过new操作符可以创建一个新的对象并将这个对象的原型链只想一个构造函数的原型对象然后执行构造函数中的代码初始化这个新对象。 常见的new的使用为 new Array() new Set()等 回顾一下new的使用 function Work(salary,city,workTime){this.salary salary;this.city city;this.workTime workTime;}const myWork new Work(20000,北京,5)console.log(我的薪资为,myWork.salary);// 我的薪资为20000面试题new的过程中发生了什么 1、创建一个空对象new运算符会在内存中创建一个新的空对象。这个对象将成为构造函数的实例。 2、设置原型链new运算符会将新对象的__proto__属性设置为构造函数的原型对象。这样新对象就可以访问到构造函数原型对象定义的属性和方法。 3、设置构造函数的作用域将构造函数的this指向新对象这样构造函数中的代码就可以通过this关键字来引用对象的属性和方法。 4、执行构造函数中的代码然后执行构造函数中的代码初始化新对象的属性。如果构造函数返回一个对象则返回该对象否早返回新创建的对象。 手写一个New function myNew(fn,...args){const obj {};obj.__proto__ fn.prototype;const res fn.apply(obj,args);return res instanceof Object ? res : obj;}function Person(age, name) {this.age agethis.name name }//除了添加属性外 也可以添加方法Person.prototype.dosingfunction(){console.log(我正在拍戏)}let person myNew(Person, 23, 彭于晏)console.log(我叫person.name)// 我叫彭于晏person.dosing()// 我正在拍戏