当前位置:首页 > 未分类

js 中 object循环

admin2年前 (2024-10-20)未分类520

1. 使用for...in循环  
        for...in语句在一个对象的所有可枚举属性上迭代。

let obj = {a:1, b:2, c:3};
for (let key in obj) {
  if (obj.hasOwnProperty(key)) {
        console.log(key, obj[key]);
  }
}


2. 使用Object.keys()  
        Object.keys()方法会返回一个由一个对象自身可枚举属性组成的数组,数组中属性名的排列顺序和使用for...in循环遍历该对象时返回的顺序一致。

 let obj = {a:1, b:2, c:3};
 Object.keys(obj).forEach((key) => {
     console.log(key, obj[key]);
 });


3. 使用Object.entries()  
        Object.entries()方法会返回一个给定对象自身可枚举属性的键值对数组。

let obj = {a:1, b:2, c:3};
Object.entries(obj).forEach(([key, value]) => {
    console.log(key, value);
});


4. 使用Object.getOwnPropertyNames()  
        Object.getOwnPropertyNames()方法返回一个数组,包含对象自身所有属性的名称(包括不可枚举属性)。

let obj = {a:1, b:2, c:3};
Object.getOwnPropertyNames(obj).forEach((key) => {
    console.log(key, obj[key]);
});


扫描二维码推送至手机访问。

版权声明:本文由前端开发技术分享发布,如需转载请注明出处。

本文链接:https://www.jqkcms.fun/?id=8

分享给朋友:

相关文章

layui使用xm-select报错,xmSelect is not defined

1. 版本1.2.4,引入方式:link引入。2. 确定报错位置为  n(221)?define(xmSelect)3. 修复方法: 报错位置改为  n(221)?define('xmSelect')…

同时使用requireJS和Layui时,解决在html文件中Layui扩展模块加载报错

前言部分后台管理框架使用Layui作为前端,并且使用了requireJS,期间可能出现的加载Layui扩展模块加载不了,或加载报错的问题。若无法加载或报错模块不是前言中提到的模块,可直接参考后面的解决思路。本次解决的问题的前提:1,使用requireJS;2,使用Layui;…

vue 子组件调用父组件方法

示例:    父组件:   ...(略)   <子组件 @触发的方法="父组件方法"></子组件>   ...(略)  &nbs…

VUE开发报错:Avoid mutating a prop directly since the value will be overwritten whenever the parent ...

VUE开发报错:Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-renders. Instead, use a data or computed p…

微信小程序 -- 由于隐私协议未设置,影响隐私相关api调用

在app.json中,usePrivacyCheck设置为false,可以免除在开发者工具中调试时的影响,开发版暂未测试。…