首页 > 编程语言 >【JavaScript系列】-- 对象

【JavaScript系列】-- 对象

时间:2024-03-30 15:33:17浏览次数:24  
标签:系列 -- brand JavaScript 对象 model 属性 color 构造函数

今天我们将探讨JavaScript中的一个强大工具—-对象

对象就像生活中的各种工具,帮助你更好地组织和管理信息。在实际开发中,可以使用对象来表示用户信息、处理表单数据等。
01、什么是对象
JavaScript对象是一种包含属性和方法的数据类型,可视为一个多功能盒子,用于存放各种数据。
在JavaScript中,对象是键值对的容器
键值对的典型写法是 name: value ,其中键和值之间使用冒号进行分割。

02、如何创建对象
■ 对象字面量

对象字面量是一种常见的对象创建方式,使得代码更简洁和易读。

它允许你直接使用大括号{} 来定义和初始化对象,而无需使用构造函数。

我们可以用下面这种方式,创建一个表示车辆信息的对象:

{
    brand: "现代牌子",
    model: '跑车',
    color: "蓝色",
    year: 2023
}

■ 使用构造函数

构造函数是一种特殊类型的函数,用于创建和初始化对象。

构造函数是通过new 关键字调用的函数。

构造函数的目的是产生新的对象,并通过将属性和方法添加到该对象来进行初始化。

我们可以定义一个构造函数,然后使用该构造函数创建多个实例,就像使用工厂来生产不同汽车一样。


// 构造函数
function Car(brand, model, color, year) {
    this.brand = brand;
    this.model = model;
    this.color = color;
    this.year = year;
    this.isRunning = false;

    // 启动方法
    this.start = function() {
        if (!this.isRunning) {
            this.isRunning = true;
            console.log(`启动了 ${this.color} ${this.brand} ${this.model}!`);
        } else {
            console.log("车子已经在跑了!");
        }
    };

    // 停止方法
    this.stop = function() {
        if (this.isRunning) {
            this.isRunning = false;
            console.log(`停止了 ${this.color} ${this.brand} ${this.model}。`);
        } else {
            console.log("车子已经停了!");
        }
    };
}

// 使用构造函数创建两辆汽车
let car1 = new Car("未来牌", "超级跑车", "红色", 2024);
let car2 = new Car("现代牌", "家用车", "蓝色", 2023);

03、访问对象的属性和方法

你可以用. 或者[] 来访问对象的属性或者方法。

let color = car1.color // 或者 let color = car1['color']

car1.start() // 或者 car1['start']()

04、增加对象属性和方法

通过. 来给对象动态增加新属性和新方法。

■ 添加属性

let car = {
    brand: "未来牌",
    model: "超级跑车"
};

car.color = "红色"; // 添加color属性
car.year = 2023; // 添加year属性

■ 添加方法

let car = {
    brand: "未来牌",
    model: "超级跑车",
    start: function() {
        console.log("启动了!");
    }
};

car.stop = function() {
    console.log("停止了!");
};

■ 删除属性和方法

delete car.year

需要注意的是,删除属性后,相关的属性引用就不存在了。

在实际开发中,通常情况下不太建议使用 delete 删除对象的属性,特别是方法。

最好的做法是在对象的设计阶段确定好对象的结构,而不是在运行时删除属性。

05、总结

这篇简短的介绍,可以让你对JavaScript对象有了初步的认识,后面还会介绍对象的高级技巧。

原创:前端小目标

标签:系列,--,brand,JavaScript,对象,model,属性,color,构造函数
From: https://www.cnblogs.com/o-O-oO/p/18105569

相关文章

  • Java:Java中的`static`关键字
    引言:在Java编程语言中,static关键字是一个非常重要的概念,它可以用来声明类变量和类方法。static变量或方法属于类本身,而不是类的某个特定实例。这使得它们可以在没有创建类实例的情况下被访问和使用。本文将详细探讨static关键字的用法、特点以及它在Java编程中的应用。sta......
  • 类和类之间的关系
    类和类之间的关系ObjectOrientedProgrammingObjectOrientedDesign面向对象的思想:类与类之间产生关系关系:Inheritance->继承Composition->复合Delegation->委托->Compositionbyreference->两个类之间用指针相连复合(composition)示例代码......
  • MegaScale:字节万卡集群
    随着训练集群扩展到超过数万个GPU,软件和硬件故障几乎不可避免。字节引入了一个健壮的训练框架,实现了自动故障识别和快速恢复,在最少的人为干预下实现了容错,并且对正在进行的训练任务的影响可以忽略不计。1.训练流程分配资源:在接收到提交的训练任务后,driver进程会与自定义的K......
  • 【全开源】无人共享棋牌室茶室台球室系统JAVA版本支持微信小程序+微信公众号_博纳软云
    在繁忙的都市生活中,寻找一处静谧的棋牌室、茶室或台球室,已成为许多人放松身心、享受闲暇时光的理想选择。为满足这一市场需求,我们推出了无人共享棋牌室茶室台球室系统JAVA版本,支持微信小程序和微信公众号,为您带来全新的智能体验。该系统采用先进的JAVA技术开发,实现了无人值守......
  • 基于SpringBoot+Vue的电子产品销售网站的详细设计和实现(源码+lw+部署文档+讲解等)
    文章目录前言详细视频演示具体实现截图技术栈后端框架SpringBoot前端框架Vue持久层框架MyBaitsPlus系统测试系统测试目的系统功能测试系统测试结论为什么选择我自己的网站自己的小程序(小蔡coding)代码参考数据库参考源码获取前言......
  • 基于SpringBoot+Vue的高校工作室管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
    文章目录前言详细视频演示具体实现截图技术栈后端框架SpringBoot前端框架Vue持久层框架MyBaitsPlus系统测试系统测试目的系统功能测试系统测试结论为什么选择我自己的网站自己的小程序(小蔡coding)代码参考数据库参考源码获取前言......
  • 【全开源】JAVA语聊大厅+陪玩系统语音聊天APP系统源码_博纳软云
    JAVA语聊大厅+陪玩系统语音聊天APP系统源码,融合了先进的JAVA技术和独特的陪玩系统,为用户带来了全新的语音社交体验。该系统源码不仅具备JAVA语言的高效稳定特性,还通过陪玩系统的引入,让用户在享受语音聊天的乐趣之余,更能找到心仪的玩伴,一同畅游在精彩的游戏世界。在语聊大厅中,......
  • 七星即拼模式:社交电商新纪元的高效助力器
    七星即拼模式,作为一种创新的社交电商拼团方式,近年来在电商领域崭露头角,成为推动品牌增长和销售提升的高效助力器。这种模式不仅融合了社交互动与电商购物的优势,还通过一系列创新机制,为消费者和商家带来了前所未有的便利和价值。首先,七星即拼模式实现了购物的即时性和高效性。......
  • 嵌入式中内存分配-栈区、堆区、全局区、常量区和代码区详解
    一、C语言内存分区C语言内存分区示意图如下:1.栈区栈区介绍栈区由编译器自动分配释放,由操作系统自动管理,无须手动管理。栈区上的内容只在函数范围内存在,当函数运行结束,这些内容也会自动被销毁。栈区按内存地址由高到低方向生长,其最大大小由编译时确定,速度快,但自......
  • 对接韩国,印度股票行情数据API-原创
    韩国股票行情数据API接口,印度股票行情数据API接口,日本股票行情数据API接口使用 匠山数据APIhttps://stock.js-stock.top/支持很多数据(公司信息,国际新闻,ipo、新股日历,指数)GET【股票】市场列表POST【股票】实时行情GET【股票】k线数据GET【股票】指数GET【股票】ipo、新......