• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
时光里的赶路人
博客园    首页    新随笔    联系   管理    订阅  订阅
前端基础-js

一.Map和Set有什么区别

在JavaScript中,Map和Set都是ES6引入的新的数据结构,但它们有一些关键的区别。

Map:
1. Map主要用于键值对的存储。每个元素由一对键值组成。
2. Map中的键可以是任何类型,包括函数、对象等。
3. Map的键是有序的,因此当对Map进行遍历时,元素的顺序是插入时的顺序。
4. Map对象拥有size属性,可以快速获取Map的大小。

Set:
1. Set主要用于不重复元素的存储。Set的每个元素都是唯一的。
2. 与Map类似,Set中的元素也可以是任何类型。
3. Set中的元素没有顺序,并且不能通过索引获取元素。
4. 与Map类似,Set对象同样拥有size属性,可以快速获取Set的大小。

总结,Map和Set都是存储元素的集合,但Map存储键值对并保持插入顺序,而Set仅存储唯一元素。

二.原型和原型链

1.原型是JavaScript中的一个内置属性,它可以让我们添加方法和属性,并且可以通过对象实例进行访问。

2.原型是一个对象,这个对象包含了某个特定类型的所有实例共享的属性和方法。

3.每一个构造函数都有一个prototype属性,这个属性指向一个对象,这个对象就是我们所说的原型对象。

4.原型链是JavaScript中实现继承的主要方法。就是通过这个链条,JavaScript对象能够访问到其继承的所有属性和方法。当试图访问一个不存在的属性或者方法时,JavaScript会按照原型链向上查找,一旦找到或者链条的顶端(即null)为止。

5.在JavaScript中,原型的概念是非常重要的,因为JavaScript是基于原型的语言,所有的对象字面量都会隐式的链接到Object的原型对象,对象通过原型链继承的属性可以被所有的对象实例共享。JavaScript中的一切都是对象,对象之间的连接就是由原型链形成的。

 

posted on 2023-08-18 17:06  吹风哪页就哪页  阅读(31)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3