JS使用Object.keys

语法

Object.keys(obj)返回一个由给定对象自身的可枚举的字符串键属性名组成的数组。

参数:要返回其枚举自身属性的对象

返回值:一个表示给定对象的所有可枚举属性的字符串数组

处理对象,返回可枚举的属性数组

javascript 复制代码
let person = {
	name:"张三",
	age:25,
	sex:"男",
	getName:function(){}
}

Object.keys(person) // ["name", "age", "sex","getName"]

处理数组,返回索引值数组

javascript 复制代码
let arr = [1,2,3,4,5,6]

Object.keys(arr) // ["0", "1", "2", "3", "4", "5"]

处理字符串,返回索引值数组

javascript 复制代码
let str = "javascript"

Object.keys(str) // ["0", "1", "2", "3", "4", "5", "6", "7","8","9"]

常用技巧

javascript 复制代码
let person = {
	name:"张三",
	age:25,
	sex:"男",
	getName:function(){}
}

Object.keys(person).map((key)=>{
  person[key] // 获取到属性对应的值
}) 

Object.values()和Object.keys()是相反的操作,把一个对象的值转换为数组

javascript 复制代码
let str = "javascript"

Object.values(str) // ["j", "a", "v", "a","s","c","r","i","p","t"]
相关推荐
测试界的小码农42 分钟前
【Linux 命令实战(03):文件创建、复制、移动与删除,掌握 touch、mkdir、cp、mv、rm】
linux·服务器·php
|_⊙1 小时前
网络层协议 IP
服务器·网络·tcp/ip
程序员大阳1 小时前
HTML+CSS+JS对话式实战(3)-活动管理页实现查询、新增、删除API后端接口
javascript·css·html·实战·删除·查询·新增
byte轻骑兵1 小时前
实战 1:修改 BlueZ 源码,添加自定义开机日志
linux·aiot·bluez·电脑蓝牙·嵌入式蓝牙
叼烟扛炮2 小时前
Linux 学习笔记(五十):网络层——IP 协议、子网划分与 NAT 魔法
linux·笔记·学习
叼烟扛炮2 小时前
Linux 学习笔记(六十):单线程的逆袭——epoll 高并发服务器实战
linux·服务器·网络·笔记·学习·算法
炫酷的大高个2 小时前
6 亿播放的闪身步,我用前端算出 15 倍重心差
前端·javascript
AR-26710-2 小时前
Linux Day32——实操五类资源告急排查
linux·运维
林小帅2 小时前
【笔记】Prisma v7 + SQLite TS2305 及连锁 TS7006 问题
前端·javascript·后端
Dumbness2 小时前
订阅消息弹窗必须在用户点击里调:联调实验室里 timing 和 Mock 支付通知踩的坑
javascript·uni-app