JavaScript 中创建对象的方式( 9种 )

这篇具有很好参考价值的文章主要介绍了JavaScript 中创建对象的方式( 9种 )。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

还是大剑师兰特:曾是美国某知名大学计算机专业研究生,现为航空航海领域高级前端工程师;CSDN知名博主,GIS领域优质创作者,深耕openlayers、leaflet、mapbox、cesium,canvas,webgl,echarts等技术开发,欢迎加底部微信(gis-dajianshi),一起交流。

JavaScript 中创建对象的方式( 9种 ),# Javascript理论与实践,javascript,创建对象方式,大剑师

No. 内容链接
1 Openlayers 【入门教程】 - 【源代码+示例300+】
2 Leaflet 【入门教程】 - 【源代码+图文示例 150+】
3 Cesium 【入门教程】 - 【源代码+图文示例200+】
4 MapboxGL【入门教程】 - 【源代码+图文示例150+】
5 前端就业宝典 【面试题+详细答案 1000+】

JavaScript 中创建对象的方式( 9种 ),# Javascript理论与实践,javascript,创建对象方式,大剑师


JavaScript 中创建对象的方式多种多样,以下是几种常见的创建对象的方法:

  1. 工厂模式

    function createPerson(name, age) {
      var obj = {};
      obj.name = name;
      obj.age = age;
      obj.sayHello = function() {
        console.log("Hello, I'm " + this.name);
      };
      return obj;
    }
    var person = createPerson("John", 30);
    
  2. 构造函数模式

    function Person(name, age) {
      this.name = name;
      this.age = age;
      this.sayHello = function() {
        console.log("Hello, I'm " + this.name);
      };
    }
    var person = new Person("John", 30);
    
  3. 对象字面量(或称“对象直接量”):

    var person = {
      name: "John",
      age: 30,
      sayHello: function() {
        console.log("Hello, I'm " + this.name);
      }
    };
    
  4. 原型模式

    function Person() {}
    Person.prototype.name = "John";
    Person.prototype.age = 30;
    Person.prototype.sayHello = function() {
      console.log("Hello, I'm " + this.name);
    };
    var person = new Person();
    
  5. 混合构造函数和原型模式(组合构造函数模式和原型模式的优点):

    function Person(name, age) {
      this.name = name;
      this.age = age;
    }
    Person.prototype.sayHello = function() {
      console.log("Hello, I'm " + this.name);
    };
    var person = new Person("John", 30);
    
  6. 动态原型模式

    function Person(name, age) {
      this.name = name;
      this.age = age;
      
      if (typeof this.sayHello !== 'function') { // 只有当sayHello未定义时才添加
        Person.prototype.sayHello = function() {
          console.log("Hello, I'm " + this.name);
        };
      }
    }
    var person = new Person("John", 30);
    
  7. 寄生构造函数模式

    function createPerson(name, age) {
      var obj = new Object();
      obj.name = name;
      obj.age = age;
      obj.sayHello = function() {
        console.log("Hello, I'm " + this.name);
      };
      return obj;
    }
    var person = createPerson("John", 30);
    
  8. 稳妥构造函数模式(主要用于特殊情况,对象没有公共属性,只提供方法):

    function Person(name, age) {
      var that = new Object();
      var privateName = name;
      var privateAge = age;
    
      that.getDetails = function() {
        return privateName + ", " + privateAge;
      };
    
      return that;
    }
    var person = Person("John", 30);
    
  9. 使用类来创建对象
    随着ES6引入类(Class)语法,还可以使用类来创建对象,虽然在底层仍然是基于原型机制工作的:文章来源地址https://www.toymoban.com/news/detail-846403.html

class Person {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }

  sayHello() {
    console.log("Hello, I'm " + this.name);
  }
}
var person = new Person("John", 30);

到了这里,关于JavaScript 中创建对象的方式( 9种 )的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【JavaScript速成之路】JavaScript内置对象--字符串对象

    📃个人主页:「小杨」的csdn博客 🔥系列专栏:【JavaScript速成之路】 🐳希望大家多多支持🥰一起进步呀! 📜前言:小杨在上一篇带着大家一起学习了JavaScript中的内置的数组对象,想必大家对JavaScript的内置的数组对象已经有所了解了,那么今天我们将继续带着大家学习一

    2023年04月10日
    浏览(35)
  • 【JavaScript】JavaScript 简介 ② ( JavaScript 书写方式 | 内联 JavaScript | 内嵌 JavaScript | 外部 JavaScript )

    与 CSS 类似 , JavaScrip 有 3 种 书写方式 , 分别是 : 内联 ( Inline ) JavaScript 脚本 ; 内嵌 ( Internal ) JavaScript 脚本 ; 外部 ( External ) JavaScript 脚本 ; 将 单行 或 少量 JavaScrip 代码 直接在 HTML 标签元素 中 的 onclick / onload / onmouseover 等事件 中 , 这种 JavaScrip 书写方式 称为 \\\" 内联 JavaScript

    2024年03月28日
    浏览(42)
  • JavaScript (五) -- JavaScript 事件(事件的绑定方式)

    目录 1.  JavaScript 事件的概述: 2.  事件的绑定(两种方式):         JavaScript事件是 指当网页中某个元素被触发时,可以执行一些JS代码来处理这个事件 ,例如鼠标单击、鼠标移动、键盘按键等。事件通常被认为是浏览器与用户交互的方式之一。       

    2024年02月03日
    浏览(43)
  • javascript基础十:说说你对Javascript中this对象的理解

    一、定义 函数的 this 在 JavaScript 中的表现略有不同,此外,在严格模式和非严格模式之间也会有一些差别 在绝大多数情况下,函数的调用方式决定了 this 的值(运行时绑定) this 是函数运行时自动生成的一个内部对象,只能在函数内部使用,总指向调用它的对

    2024年02月06日
    浏览(31)
  • JavaScript系列从入门到精通系列第二十篇:使用工厂方法创建JavaScript对象,JavaScript构造函数详解,JavaScript类概念的介绍

    文章目录 一:使用工厂方法创建对象 1:原始写法 2:工厂方式 3:结果验证  二:构造函数 1:什么是构造函数 2:构造函数和普通函数的区别 3:构造函数的执行流程 三:类 1:什么是类 2:如何检查一个对象是否是个类的实例 3:Object的地位 四:构造函数修改 1:重大问题

    2024年02月08日
    浏览(30)
  • 4 JavaScript数组和对象

    4 数组和对象 在JS中创建数组非常简单. 直接[ ]即可. 也可以用正规军的new Array(). 不过效果都是一样的. 数组的常用操作: 在JS中创建一个对象非常容易. 和python中的字典几乎一样{ }: 使用对象 从上述内容中几乎可以看到. JS对象的使用几乎是没有门槛的. 十分灵活 代码的效果图如

    2024年02月12日
    浏览(24)
  • JavaScript有哪些内置对象

    还是大剑师兰特 :曾是美国某知名大学计算机专业研究生,现为航空航海领域高级前端工程师;CSDN知名博主,GIS领域优质创作者,深耕openlayers、leaflet、mapbox、cesium,canvas,webgl,echarts等技术开发,欢迎加底部微信(gis-dajianshi),一起交流。 No. 内容链接 1 Openlayers 【入门教

    2024年04月13日
    浏览(24)
  • JavaScript this对象

    this时是函数运行时自动生成的一个内部对象,只能在函数内部使用,总 指向调用它的对象 默认绑定 全局环境中定义函数,内部使用this 上述调用函数的对象在浏览器中为window,所以this指向window,输出Jenny 函数可以作为某个对象的方法来调用,此时this就指向这

    2024年03月11日
    浏览(27)
  • JavaScript日期对象

    1.实例化 2.时间对象方法 3.时间戳 背景: 日期对象 目标 :掌握日期对象,可以让网页显示日期 日期对象 :用来表示时间的对象 作用 :可以得到当前系统时间 目标:能够实例化日期对象 1.在代码中发现了new时,一般将这个操作称为实例化 2.创建一个时间对象并获取

    2024年02月06日
    浏览(23)
  • JavaScript(内置对象)

    Array:用于在单独的变量名中存储一系列的值 String:用于支持对字符串的处理 Math:用于执行常用的数学任务,包含若干个数字常量和函数 Date:用于操作日期和时间 创建数组 为数组元素赋值 访问数组 类别 名称 描述 属性 length 设置或返回数组中元素的数目 方法 join() 把数组

    2024年02月10日
    浏览(24)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包