• 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会被无效化


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

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

  • 相关阅读:
    提高C++性能的编程技巧
    数据结构详细笔记——图
    促成交、推复购、提效率……我们是认真的!
    三天学会阿里分布式事务框架Seata-SpringCloud Alibaba分布式基础案例搭建
    逻辑运算符的优先级
    Maximizing Range Sum in Trajectory Data
    通过Vue-cli搭建spa项目
    要求用一句sql语句打印出A,B各剩了多少
    xtrabackup备份 脚本
    【LeetCode高频SQL50题-基础版】打卡第7天:第36~40题
  • 原文地址:https://blog.csdn.net/qq_52855464/article/details/125626642