1、在构造函数里面,如果不写return的话默认就是返回创建的实例对象。
2、在构造函数里面,如果写了return的话
1)如果return的是一个基本数据类型的话比如,boolean,number,undefined等那么仍然返回实例对象;
2)如果return的是一个对象的话,则返回该对象。原本的指向实例对象的this会被无效化。
- // 情况一:return false (return基本数据类型,仍然返回实例化对象)
- const test = {
- rules: false
- };
- function Build() {
- this.rules = true;
- return false
- }
- const build = new Build();
- console.log(build);
- console.log(build.rules);

- // 情况二:return this.rules (return基本数据类型,仍然返回实例化对象)
- const test = {
- rules: false
- };
- function Build() {
- this.rules = true;
- return this.rules
- }
- const build = new Build();
- console.log(build);
- console.log(build.rules);

- // 情况三:return test (return对象test,返回对象test)
- const test = {
- rules: false
- };
- function Build() {
- this.rules = true;
- return test
- }
- const build = new Build();
- console.log(build);
- console.log(build.rules);

- const test = {
- rules: false
- };
- function Build() {
- this.rules = true;
- }
- const build = new Build();
- console.log(build);
- console.log(build.rules);

在构造函数里面,如果不写return的话默认就是返回创建的实例对象,
但是如果加入了return的话,如果return的是一个基本数据类型的话比如,boolean,number,undefined等那么仍然返回实例对象,如果返回的是一个对象的话,则返回该对象,原本的指向实际对象的this会被无效化。
文章如有错误,恳请大家提出问题,本人不胜感激 。 不懂的地方可以评论,我都会一一回复
文章对大家有帮助的话,希望大家能动手点赞鼓励,大家未来一起努力 长路漫漫,道阻且长