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

我会详细讲解“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日

相关文章

  • 基于jsTree的无限级树JSON数据的转换代码

    关于基于 jsTree 的无限级树 JSON 数据的转换代码,我来给您讲解一下完整攻略。 首先,我们需要了解一下 jsTree 的数据结构。它使用 JSON 对象来表示树形结构,其中每个节点都是一个对象,包含以下属性: “id”:节点的唯一标识符; “text”:节点的文本; “icon”:节点的图标; “state”:节点的状态,包括是否被选中、是否展开等…

    JavaScript 2023年5月28日
    00
  • JS中精巧的自动柯里化实现方法

    JS中的柯里化是一种高级的函数式编程技巧,它允许我们将多参数函数转换为单参数函数,这在某些情况下非常方便并且优雅。下面我来详细讲解JS中精巧的自动柯里化实现方法。 基本柯里化方法 在JS中实现柯里化通常需要使用闭包和递归的方法。下面是一种基本柯里化方法: function curry(fn, args) { return function() { var n…

    JavaScript 2023年6月10日
    00
  • javascript 判断两个日期之差的示例代码

    下面是使用 JavaScript 判断两个日期之差的示例代码的完整攻略。 判断两个日期之差的基本原理 JavaScript 内置的 Date 对象可以获取当前时间,也可以接收指定的日期。我们可以将两个日期分别转换成毫秒数,然后计算它们之间的差值,就可以知道它们之间相差多少时间。 实现步骤 接下来是具体的实现步骤: 首先,我们需要获取到要比较的两个日期。这里的…

    JavaScript 2023年5月27日
    00
  • js直接编辑当前cookie的脚本

    为了编辑当前页面的cookie,我们可以利用JavaScript和Document.cookie属性实现。下面是具体步骤: 获取当前cookie字符串 使用document.cookie获取当前页面的cookie字符串。 示例代码: console.log(document.cookie); // 输出当前页面的cookie字符串 编写修改cookie的函数…

    JavaScript 2023年6月11日
    00
  • 详解JavaScript函数绑定

    下面我来详细讲解“详解JavaScript函数绑定”的完整攻略。 什么是JavaScript函数绑定 JavaScript函数绑定即为改变函数运行时下文的this环境。在JavaScript中,函数的this值被自动设置为全局对象或者调用它的对象,但是使用函数绑定可以改变this的值,使它指向另一个对象。 函数绑定的方法 JavaScript有三种方法来实现…

    JavaScript 2023年5月27日
    00
  • uniapp跨页面传值uni.$emit和uni.$on的使用及踩坑实战

    uniapp 跨页面传值:uni.$emit 和 uni.$on 的使用 在一个完整的 uniapp 应用程序中,存在着多个页面组成的应用。有时候我们需要在不同的页面之间传递数据,这时候就要用到 uniapp 提供的跨页面传值方式 —— uni.$emit 和 uni.$on。 1. uni.$emit 和 uni.$on 概述 uni.$emit 和 un…

    JavaScript 2023年6月11日
    00
  • js设置cookie过期及清除浏览器对应名称的cookie

    如何设置Cookie过期时间 Cookie是用来存储一些数据的,在某些情况下,我们希望对存储的cookie设置过期时间,来更好地实现一些功能。下面是利用JS设置cookie过期时间的方法: 利用JS设置cookie document.cookie = "cookieName=cookieValue;expires=Thu, 18 Dec 2022 …

    JavaScript 2023年6月11日
    00
  • js实现购物车功能

    JS实现购物车功能的攻略分为以下步骤: 1. 创建基础页面结构 首先需要创建一个基础页面结构,用来展示商品列表、购物车和结算按钮等元素。可以通过HTML和CSS实现页面的布局和样式。在页面上创建一个购物车DOM元素,以便后续通过JavaScript动态地向购物车添加商品。 2. 加载商品数据 可以通过AJAX或其他请求方式,从服务器获取商品数据并渲染到页面上…

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