• JS:构造函数的返回值


     构造函数返回的知识点

    1、在构造函数里面,如果不写return的话默认就是返回创建的实例对象。

    2、在构造函数里面,如果写了return的话

      1)如果return的是一个基本数据类型的话比如,boolean,number,undefined等那么仍然返回实例对象;

       2)如果return的是一个对象的话,则返回该对象。原本的指向实例对象的this会被无效化。

     情况一:return false  (return基本数据类型,仍然返回实例化对象)

    1. // 情况一:return false (return基本数据类型,仍然返回实例化对象)
    2. const test = {
    3. rules: false
    4. };
    5. function Build() {
    6. this.rules = true;
    7. return false
    8. }
    9. const build = new Build();
    10. console.log(build);
    11. console.log(build.rules);

     情况二:return this.rules   (return基本数据类型,仍然返回实例化对象)

    1. // 情况二:return this.rules (return基本数据类型,仍然返回实例化对象)
    2. const test = {
    3. rules: false
    4. };
    5. function Build() {
    6. this.rules = true;
    7. return this.rules
    8. }
    9. const build = new Build();
    10. console.log(build);
    11. console.log(build.rules);

     

     情况三:return test    (return对象test,返回对象test)

    1. // 情况三:return test (return对象test,返回对象test)
    2. const test = {
    3. rules: false
    4. };
    5. function Build() {
    6. this.rules = true;
    7. return test
    8. }
    9. const build = new Build();
    10. console.log(build);
    11. console.log(build.rules);

     

    情况四:什么都不做 (不写return,默认返回创建的实例对象。) 

    1. const test = {
    2. rules: false
    3. };
    4. function Build() {
    5. this.rules = true;
    6. }
    7. const build = new Build();
    8. console.log(build);
    9. console.log(build.rules);

     


    总结

    在构造函数里面,如果不写return的话默认就是返回创建的实例对象,

    但是如果加入了return的话,如果return的是一个基本数据类型的话比如,boolean,number,undefined等那么仍然返回实例对象,如果返回的是一个对象的话,则返回该对象,原本的指向实际对象的this会被无效化


    文章如有错误,恳请大家提出问题,本人不胜感激 。 不懂的地方可以评论,我都会一一回复

    文章对大家有帮助的话,希望大家能动手点赞鼓励,大家未来一起努力     长路漫漫,道阻且长  

  • 相关阅读:
    Sping高级(源码)--- 1.6Aware接口
    Cesium实现卫星在轨绕行
    海外工具站 2022 复盘:50+ 条所见所思所感
    删除maven中出现.lastUpdate结尾的文件
    java计算机毕业设计售楼系统(附源码、数据库)
    c++ 学习 之 静态存储区域 和常量字符串的联系
    pinia下载使用时报错如何解决?
    shell脚本编程之循环
    SpringAOP的实现机制(底层原理)、应用场景等详解
    ENVI_IDL: 批量制作专题地图
  • 原文地址:https://blog.csdn.net/qq_52855464/article/details/125626642