Object的相关方法 和 js遍历对象的常用方法总结

yizhihongxing

我会详细讲解“Object的相关方法和js遍历对象的常用方法总结”的完整攻略。

Object的相关方法

Object 是 JavaScript 的一个基础类型,它包含以下常用的方法:

创建对象

在 JavaScript 中,可以使用以下方法创建一个对象:

  • 字面量方式
let obj = { prop1: 'value1', prop2: 'value2' };
  • 构造函数方式
let obj = new Object();
obj.prop1 = 'value1';
obj.prop2 = 'value2';

操作属性

可以使用以下方法操作对象的属性:

  • 获取属性值
let value = obj.prop;
  • 设置属性值
obj.prop = 'new value';
  • 判断是否存在属性
if ('prop' in obj) {
  // do something
}
  • 删除属性
delete obj.prop;

判断类型

可以使用以下方法判断对象的类型:

  • typeof 操作符
let type = typeof obj;
  • Object.prototype.toString 方法
let type = Object.prototype.toString.call(obj);

其他方法

  • Object.keys()

获取对象上的所有可枚举属性。

let keys = Object.keys(obj);
  • Object.values()

获取对象上的所有可枚举属性的值。

let values = Object.values(obj);

js遍历对象的常用方法总结

在 JavaScript 中,遍历对象有以下几个常用的方法:

for...in 循环

使用 for...in 循环可以遍历一个对象的所有可枚举属性。

for (let prop in obj) {
  console.log(obj[prop]);
}

但是需要注意的是,for...in 循环会遍历对象的原型链上的所有可枚举属性,因此可能会导致意外的属性被遍历。

Object.keys() 方法

Object.keys() 方法可以获取一个对象上的所有可枚举属性,可以结合 Array.prototype.forEach() 方法来遍历这些属性。

Object.keys(obj).forEach((key) => {
  console.log(obj[key]);
});

Object.getOwnPropertyNames() 方法

Object.getOwnPropertyNames() 方法可以获取一个对象上的所有属性,包括不可枚举属性,可以结合 Array.prototype.forEach() 方法来遍历这些属性。

Object.getOwnPropertyNames(obj).forEach((prop) => {
  console.log(obj[prop]);
});

Object.getOwnPropertySymbols() 方法

Object.getOwnPropertySymbols() 方法可以获取一个对象上的所有 Symbol 类型的属性,可以结合 Array.prototype.forEach() 方法来遍历这些属性。

Object.getOwnPropertySymbols(obj).forEach((symbol) => {
  console.log(obj[symbol]);
});

示例1:

let obj = {
  name: '张三',
  age: 18,
  gender: '男',
};

for (let prop in obj) {
  console.log(prop);
  console.log(obj[prop]);
}

let keys = Object.keys(obj);
keys.forEach((key) => {
  console.log(key);
  console.log(obj[key]);
});

输出结果:

name
张三
age
18
gender
男
name
张三
age
18
gender
男

示例2:

let obj = { [Symbol('a')]: 1, [Symbol('b')]: 2 };

Object.getOwnPropertySymbols(obj).forEach((symbol) => {
  console.log(obj[symbol]);
});

输出结果:

1
2

希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Object的相关方法 和 js遍历对象的常用方法总结 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • javascript针对DOM的应用分析(二)

    JavaScript针对DOM的应用分析 在使用JavaScript时,操作DOM是很重要的一部分。在本攻略中,我们将详细讨论JavaScript如何应用于DOM。 DOM基础知识 DOM(Document Object Model,文档对象模型)是指用于 HTML 和 XML 文档的编程接口。DOM 将整个页面抽象为一个树形结构,页面中的每个组成部分都是树…

    JavaScript 2023年6月10日
    00
  • js设置document.domain实现跨域的注意点分析

    关于“js设置document.domain实现跨域的注意点分析”的攻略,我将详细介绍如下: 什么是跨域? 在 Web 开发中,跨域是指在一个域下的文档或脚本试图去请求另一个域下的资源。简单来说,当浏览器向一个网站的服务器发送请求时,如果该请求要访问另外一个域名下的资源(比如 JavaScript 文件、CSS 文件等),那么就会发生跨域问题。 为什么需要跨…

    JavaScript 2023年6月10日
    00
  • JS使用插件cryptojs进行加密解密数据实例

    JS使用插件cryptojs进行加密解密数据实例 1. 什么是cryptojs? cryptojs是一个JavaScript加密库,它提供了各种加密算法和哈希算法,如AES、DES、TripleDES、RC4、MD5、SHA1、SHA256等。cryptojs是一个标准的ES6模块,支持在浏览器和Node.js环境中使用。 2. 安装和引用cryptojs …

    JavaScript 2023年5月19日
    00
  • 基于elementUI实现图片预览组件的示例代码

    下面就来详细讲解“基于elementUI实现图片预览组件的示例代码”的完整攻略,攻略分为以下几个步骤: 1. 安装elementUI 首先需要安装elementUI,可以使用npm或者yarn来安装,这里以npm为例: npm install element-ui –save 2. 导入elementUI插件 在项目中导入elementUI插件,可以选择在…

    JavaScript 2023年6月10日
    00
  • JavaScript比较两个对象是否相等的方法

    如何比较两个JavaScript对象是否相等是一个相对复杂的问题。JavaScript提供了几种方法来比较两个对象,但每种方法都有自己的限制和局限性。这里将介绍其中三种最常用的方法来比较对象是否相等。 1. 使用JSON.stringify()方法 JSON.stringify()方法是将一个JavaScript对象转换为一个JSON字符串的方法。我们可以使…

    JavaScript 2023年5月27日
    00
  • JavaScript之引用类型介绍

    下面是详细讲解“JavaScript之引用类型介绍”的完整攻略。 引用类型介绍 在JavaScript中,除了基本类型(number、string、boolean、null、undefined)之外,还有一类特殊的类型,被称为引用类型。引用类型是由多个值组成的对象。 对象 对象是引用类型的最基本类型。对象是由多个键值对组成的属性集合。 创建对象有两种方式,一…

    JavaScript 2023年5月19日
    00
  • JS弹性运动实现方法分析

    JS弹性运动实现方法分析 弹性运动的基本概念 我们经常使用动画效果来增强网站的视觉效果和用户体验。弹性动画效果指的是元素在运动时有一个缓冲过程,动画结束位置不是到达目标位置,而是反弹一段距离再停止。这种效果可以使我们的动画看起来更加自然、生动有趣。 JS实现弹性运动 为了实现弹性运动,我们需要用到三个变量:初始值、目标值和速度值。我们可以使用JS实现弹性运动…

    JavaScript 2023年5月28日
    00
  • PHP+Ajax+JS实现多图上传

    下面我将为您详细讲解“PHP+Ajax+JS实现多图上传”的完整攻略。 总体思路 实现多图上传,我们需要通过Ajax技术将多张图片逐一传递到服务器端,再通过PHP将图片保存到指定目录中。下面是详细的步骤: 使用HMTL5的file类型的input框架,在客户端实现图片上传。 使用JavaScript遍历的方式,依次将图片上传到服务器端。 JavaScript…

    JavaScript 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部