JavaScript创建对象的方法

本文摘自千锋教育的《JavaScript实战详解》

在语法方面,JavaScript是一种灵活的面向对象语言。在本文中,我们将给大家介绍JavaScript实例化对象的不同方法。
需要注意的是JavaScript是一种无类语言,并且函数以某种方式使用,以便它们模拟一个类。

使用函数作为类:
用JavaScript实例化对象的最简单方法之一。我们定义了一个经典的JavaScript函数,并使用new关键字创建函数的对象。函数的属性和方法使用this关键字创建。

<script> 

    function copyClass(name, age) { 

        this.name = name; 

        this.age = age; 

        this.printInfo = function() { 

            console.log(this.name); 

            console.log(this.age); 

        } 

    } 

// 创建copyClass对象并初始化参数。

var obj = new copyClass("Vineet", 20); 

//调用copyClass的方法。

obj.printInfo(); 

</script>

输出:

Vineet

20

说明:OOP中的类有两个主要组件,某些参数和一些成员函数。在这个方法中,我们声明一个类似于类的函数,有两个参数,name和age(this关键字用于将类的名称和年龄区分为正在提供的参数的名称和年龄。)和printInfo方法,用于打印这些参数的值。然后我们简单地创建一个copyClass的对象obj,初始化它并调用它的方法。

使用对象字面量:

字面量是定义对象的更小和更简单的方法。下面我们用字面量实例化一个与前一个对象完全相同的对象。

<script> 

    var obj = { 

        name : "", 

        age : "", 

        printInfo : function() { 

            console.log(this.name); 

            console.log(this.age); 

        } 

    } 

   

// 初始化参数。

obj.name = "Vineet"; 

obj.age = 19; 

   

// 使用对象的方法。

obj.printInfo(); 

</script>

输出:

Vineet

20

说明:这个方法与前一个方法的工作原理相同,但是我们没有将参数(名称和年龄)和方法(printInfo)捆绑在函数中,而是将它们捆绑在对象本身中,初始化对象并简单地使用方法。

使用函数的单例:

第三种方法是另外两种方法的结合。我们可以使用一个函数来定义一个单例对象。

<script> 

    var obj = new function() { 

        this.name = ""; 

        this.age = ""; 

        this.printInfo = function() { 

            console.log(this.name); 

            console.log(this.age); 

        }; 

    } 

   

obj.name = "Vineet"; 

obj.age = 20; 

   

obj.printInfo(); 

</script>

输出:

Vineet

20

说明:这是前两种方法的组合,我们将方法和参数捆绑在一个函数中,但没有为它声明单独的函数(如方法1中的copyClass),而是简单地使用函数结构声明一个对象。

千锋教育内部视频教程
概括Java、Python等IT语言
+Q:2833142073
免费领取!免费领取!免费领取!

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值