[JS]对象

介绍

对象是一种无序的数据集合, 可以详细的描述某个事物

事物的特征在对象中用属性来表示, 事物的行为在对象中用方法来表示

使用

创建对象
let 对象名 = {
    属性名:值,
    方法名:函数,
}
let 对象名 = new Object();
对象名.属性 = 值;
对象名.方法名 = 函数;
  1. 对象的属性用来描述对象的信息, 一般是名词性的
  2. 属性名可以用引号包裹, 一般情况下省略, 除非名称包含特殊符号( 空格 / 中横线)
  3. 对象的方法用来描述对象的行为, 一般是动词性的
  4. 方法名可以用引号包裹, 一般情况下省略, 除非名称包含特殊符号( 空格 / 中划线 )
操作对象

访问

  • 对象名.属性名 // 常规访问
  • 对象名["属性名"] // 特殊访问
  • 对象名.方法名();

修改

  • 对象名.属性名 = 新值
  • 对象名.方法名 = 新函数

新增

  • 对象名.新属性名 = 值
  • 对象名.新方法名 = 函数

删除

  • delete 对象名.属性名 // 严格模式失效

遍历对象

不能像遍历数组一样遍历对象

  1. 对象没有像数组一样的length属性,所以无法确定长度
  2. 对象里面是无序的键值对, 没有规律. 不像数组里面有规律的下标

for(let k in 对象名) {
  console.log(k)         // 得到属性名(字符串)
  console.log(对象名[k])  // 得到属性值
}

内置对象

JS内部提供的对象, 包含各种属性和方法给开发者调用

Math对象

提供了一系列数据运算的方法

  • Math.max(); 最大值
  • Math.min(); 最小值
  • Math.ceil(); 向上取整
  • Math.floor; 向下取整
  • Math.random(); // 生成随机数, 0-1之间, 包含0不包含1, [0-1)
  • 查询更多: https://developer.mozilla.org/zh-CN/
// 生成0-10的随机数
Math.floor(Math.random() * (10 + 1))

// 生成5-10的随机数
Math.floor(Math.random() * (5 + 1)) + 5

// 生成n-m的随机数
Math.floor(Math.random() * (M - N + 1)) + N

// 生成数组随机下标
 Math.floor(Math.random() * arr.length)

Data对象

提供了一些列和时间相关的方法

// 获取系统时间
const date = new Date()

// 获取指定的时间对象
const date = new Date('2022-12-08')

对象方法

日期对象返回的数据不直观, 所以要经常的进行格式转换

<script>
    function getMyDate() {
      const date = new Date();
      let h =  date.getHours();
      let m =  date.getMinutes();
      let s =  date.getSeconds();
      h = h > 10 ? h : '0' + h;
      m = m > 10 ? m : '0' + m;
      s = s > 10 ? s : '0' + s;
      return `${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()} ${h}:${m}:${s}`
    }

     console.log(getMyDate());
  </script>
<script>
  const date = new Date();
  console.log(date.toLocaleString());   // 2022/1/10 09:15:05 
  console.log(date.toLocaleDateString());  // 2022/1/10
  console.log(date.toLocaleTimeString());  // 09:15:05 
</script>
<script>
  const arr = ['星期日','星期一','星期二','星期三','星期四','星期五','星期六',] 
  arr[new Date().getDay()]
</script>

时间戳

1970年1月1日00时00分00秒起到现在的毫秒数, 是一种计量时间的方式, 用于实现时间的计算

// 方法1
cosnt date = new Date()
date.getTime()

// 方法2 (推荐)
+new Date()
+new Date('2023-12-15 16:00:00')

// 方法3
// 只能获取当前的时间戳
Date.now()
<script>
  // 1.计算剩余时间秒数
  // 剩余时间毫秒数 = 未来的时间戳 - 现在的时间戳
  const surplus = (+new Date('2024-8-12 12:00:00') - +new Date()) / 1000;
  // 2.转换时间格式
  let d = Math.floor(surplus / 60 / 60 / 24); // 剩余天数
  let h = Math.floor(surplus / 60 / 60 % 24); // 剩余小时
  let m = Math.floor(surplus / 60 % 60);      // 剩余分钟
  let s = Math.floor(surplus % 60);           // 剩余秒数
  // 3.拼接剩余时间
  const date = `${d}天${h}小时${m}分钟${s}秒`;
  console.log(date);
</script>
Set数据结构

定义:类似于数组,但是里面的成员是唯一的.

创建: 本身是一个构造函数.

1, const set = new Set();

2, set.size // 求集合大小(set里面包含几个元素)

数组去重:

let set1 = new Set([1,1,2,2,3]) //用Set数据结构去重

let arr = [...set1] //用扩展运算符解析Set

arr = [1,2,3] //得到的新数组就是去重的数组

增删改查:

用法: 可以用逗号隔开写多个值

let set = new Set()

set.add('a')

set.delete('a')

set.clear()

set.has('a')

add()方法 :添加功能,返回Set结构

delete()方法:删除功能,返回布尔值

has()方法:查找功能,返回布尔值

clear()方法:清空功能,清空全部值

遍历: forEach()方法

set.forEach(item=>{ log(item) })

item就是set数据结构的每一项

  • 13
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: JavaScript对象编程是指使用JavaScript语言创建和操作对象的过程。在JavaScript中,对象是一种复合数据类型,可以包含属性和方法。对象可以通过字面量、构造函数、原型等方式创建。通过对象编程,可以实现面向对象编程的思想,使代码更加模块化、可维护和可扩展。在JavaScript中,对象是非常重要的概念,掌握对象编程是成为一名优秀的JavaScript开发者的必备技能之一。 ### 回答2: JavaScript是一种流行的编程语言,其中面向对象编程(OOP)是其中的重要组成部分。对象JavaScript编程中最重要的概念之一,它是一种数据类型,通过对象可以轻松地组织和管理数据。JS对象包含了一组属性和方法,可以用来描述某个对象的性质和行为。 在JavaScript中,对象是动态创建的。创建对象的方法有很多,其中最简单的就是使用字面量,例如: var person = { name: 'Tom', age: 20, gender: 'male', sayHi: function() { console.log('Hi, my name is ' + this.name + ',I am ' + this.age + ' years old.') } }; 上面的代码定义了一个名为person的对象,该对象具有属性name、age、gender和方法sayHi。使用字面量创建对象的好处是,可以轻松地在代码中定义对象,而无需使用专门的构造函数。 当然,也可以使用构造函数来创建对象,例如: function Person(name, age, gender) { this.name = name; this.age = age; this.gender = gender; this.sayHi = function() { console.log('Hi, my name is ' + this.name + ',I am ' + this.age + ' years old.') } }; var person = new Person('Tom', 20, 'male'); 上面的代码定义了一个名为Person的构造函数,在创建对象时使用了new关键字来调用该构造函数,返回一个新的person对象。这个对象包含了属性name、age、gender和方法sayHi。 在JavaScript中,对象是可以嵌套的。可以在对象中嵌套其他对象,也可以在对象中嵌套函数,这些函数就是对象的方法。通过对象的嵌套,可以更好地管理数据,使程序更加规范和易于维护。 总之,JavaScript对象编程是一种强大且灵活的编程方式,通过对象可以轻松地组织和管理数据,从而实现更好的开发效率和代码质量。由于JavaScript的广泛应用,对于对象编程的掌握将有助于开发者更好地掌握这门语言。 ### 回答3: 在JavaScript中,对象是一种基础数据类型,也是语法的重要组成部分。对象是由若干属性构成的,每个属性都是键值对的形式,其中键是字符串类型,值可以是任意的JavaScript数据类型,包括对象。通过定义对象的属性和方法,我们可以在JavaScript中创建功能强大的程序。 JavaScript对象编程有以下几个重要概念: 1. 对象字面量:使用“{}”来定义对象,字符:“:”分割键与值,“,”分割不同键值对。如:var obj = {name: "小明", age: 18}; 2. 访问对象属性:使用“.”操作符访问对象属性。如:obj.name 3. 新增属性:使用“.”或“[]”,如:obj.height = 180; 或 obj['sex'] = 'male'; 4. 删除属性:使用“delete”关键字,如:delete obj.age; 5. 遍历对象属性:使用“for...in...”语句遍历对象属性,如: for(var key in obj) { console.log(key + ": " + obj[key]); } 6. 面向对象编程:JavaScript中也可以实现面向对象编程。定义一个构造函数,然后使用“new”关键字创建对象实例,如: function Person(name, age) { this.name = name; this.age = age; this.sayHello = function () { console.log("Hello, my name is " + this.name + ", I'm " + this.age + " years old."); } } var p = new Person('小明', 18); p.sayHello(); // 输出:Hello, my name is 小明, I'm 18 years old. JavaScript对象编程是非常灵活的,我们可以根据需要动态地定义、操作对象,同时结合面向对象编程,使得JavaScript的代码结构更加清晰有序。掌握好JavaScript对象编程的技巧,可以让我们开发出更高效、更具有扩展性的项目。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值