栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

构造函数可以返回什么值以避免返回此值?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

构造函数可以返回什么值以避免返回此值?

确切的条件在

[[Construct]]
内部属性上进行了描述,该属性由
new
操作员使用:

来自ECMA-262第3条。版本规格:

13.2.2

[[Construct]]

调用对象的

[[Construct]]
属性时,将执行以下步骤:
Function``F

  1. 创建一个新的本机ECMAscript对象。
    2.
    将的
    [[Class]]
    属性设置
    Result(1)
    "Object"


  2. 获取的prototype属性值
    F

    4.
    如果
    Result(3)
    是对象,请将的
    [[Prototype]]
    属性设置
    Result(1)
    Result(3)

    5.
    如果
    Result(3)
    不是对象,则按15.2.3.1中所述将
    [[Prototype]]
    属性设置
    Result(1)
    为原始
    Object
    原型对象。
    6.
    调用的
    [[Call]]
    属性
    F
    ,将其提供
    Result(1)
    this
    值,并提供传入的参数列表
    [[Construct]]
    作为参数值。
  3. 如果
    [Type](http://bclary.com/2004/11/07/#a-8)(Result(6))
    是,
    Object
    则返回
    Result(6)
  4. 返回
    Result(1)

查看步骤7和8,仅当

Result(6)
F
构造函数返回的值)类型 不是 Object时,才返回新对象。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/385197.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号