js中构造函数的输出

function Demo(){
    this.fn=function(){
        console.log(1)
    } 
}

Demo.fn=function(){
    console.log(2)
}
Demo.prototype.fn=function(){console.log(3)}
function fn(){
    console.log(4)
}
var fn=function(){
    console.log(5)
}
// Demo.fn()//2
// Demo.fn//不执行
// Demo().fn()//报错

// console.log(Demo.fn())
/* 
    2
    undefined
*/
// console.log(Demo.fn)
/* 
    ƒ (){
        console.log(2)
    }
*/
// console.log(Demo().fn())
/*
    Uncaught TypeError: Cannot read properties of undefined (reading 'fn')
*/


// new Demo().fn()//1
// new new Demo().fn()//1
// new Demo.fn()//2
// new new Demo.fn()
/* 
    2
    Uncaught TypeError: (intermediate value) is not a constructor
*/

// console.log(new Demo().fn())
/* 
    1
    undefined
*/
// console.log(new new Demo().fn())
/* 
    1
    Demo.fn()
*/
// console.log(new Demo.fn())
/* 
    2
    Demo.fn()
*/
// console.log(new new Demo.fn())
/* 
    2
    报错
*/

// fn()//5
posted @   qiao101  阅读(53)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示