美文网首页
037|JavaScript自定义类型

037|JavaScript自定义类型

作者: 中年小钢炮 | 来源:发表于2017-05-21 22:38 被阅读33次

    在前面的课程中,我们已经创建过String、Number、Object类型的对象,这几种对象都是JavaScript内置类型。

    实际上,我们也可以创建自定义类型,并且创建自定义类型实例。

    自定义类型

    一个函数,其实就是一个新类型,当将new语句加上函数名一起使用的时候,就够创建自定义类型的实例,语法如下:

    new FunctionName()
    

    一个函数之所有也是一个新类型,这背后涉及到复杂的概念,后续的课程中将会一点点讲解。目前,暂时认为一个函数就是一个类型。

    我们通过一个代码来理解一下:

    function Position()
    {
    }
    
    var pos = new Position() // 将Position函数旋转在new的后面
    console.log(pos instanceof Position)
    

    上面的代码中,我们使用new+Position函数名,创建了一个pos对象。然后最后一行中用instanceof来验证pos是否是Position的实例。我们来看一下程序运行结果:

    运行结果

    我们看到运行结果输出了true,说明pos对象是Position的实例。

    函数对象

    实际上Position函数是一个函数(Function)对象。在前一节中学习typeof时,我们知道函数对象是一个JavaScript内置基类型。

    object也是一个内置基类型,那function类型与object类型有什么区别呢?
    他们最大的区别是,function类型对象可以在尾部添加()(小括号)来调用,而object类型不可以。

    每一个通过function 语句创建的函数都是function对象,所以他们都能通过functionName()的方式来调用。

    好了,这一节学了创建自定义类型以及函数对象。这一节开始,我们已经慢慢进入到JavaScript语言本质的领域。如果你能清楚funtion对象与object对象的区别,你已经超越很多开发者了。

    什么是构造函数?
    什么是switch语句?

    请继续关注我的课程,我将在后续课程中为大家解答上述问题。

    想学计算机技术吗?需要1对1专业级导师指导吗?想要团队陪你一起进步吗?欢迎加我为好友!

    我的微信

    相关文章

      网友评论

          本文标题:037|JavaScript自定义类型

          本文链接:https://www.haomeiwen.com/subject/xervxxtx.html