每日一学:在 JavaScript 中创建对象的可行方法有哪些?

每日一学:在 JavaScript 中创建对象的可行方法有哪些?

1)对象构造函数:

创建空对象的最简单方法是使用 Object 构造函数。目前不推荐这种方法。

var object = new Object();

(2)对象的创建方法:

Object 的 create 方法通过将原型对象作为参数传递来创建一个新对象

var object = Object.create(null);

(3)对象字面量语法:

当传递 null 作为参数时,对象字面量语法等效于 create 方法

var object = {};

(4)函数构造器:

创建任何函数并应用 new 运算符来创建对象实例,

function Person(name){
   var object = {};
   object.name=name;
   object.age=21;
   return object;
}
var object = new Person("Sudheer");

(5)带有原型的函数构造函数:

这类似于函数构造函数,但它使用原型作为其属性和方法,

function Person(){}
Person.prototype.name = "Sudheer";
var object = new Person();

这等效于使用具有函数原型的对象创建方法创建的实例,然后使用实例和参数作为参数调用该函数。

function func {};
 
new func(x, y, z);

(或者)

作者:海拥
链接:https://www.nowcoder.com/discuss/991813#1
来源:牛客网

// 使用函数原型创建一个新实例。
var newInstance = Object.create(func.prototype)
 
// 调用函数
var result = func.call(newInstance, x, y, z),
 
// 如果结果是非空对象,则使用它,否则只使用新实例。
console.log(result && typeof result === 'object' ? result : newInstance);

(6)ES6 类语法:

ES6 引入类特性来创建对象

class Person {
   constructor(name) {
      this.name = name;
   }
}
 
var object = new Person("Sudheer");

(7)单例模式:

Singleton 是一个只能实例化一次的对象。对其构造函数的重复调用返回相同的实例,这样可以确保它们不会意外创建多个实例。

  var object = new function(){
     this.name = "Sudheer";
  }

作者:terry,如若转载,请注明出处:https://www.web176.com/news/frontend/7294.html

(0)
打赏 支付宝 支付宝 微信 微信
terryterry
上一篇 2022年10月31日 上午11:44
下一篇 2022年11月9日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注