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"]
相关推荐
To_OC40 分钟前
LC 207 课程表:刚学图论那会儿,我连这是拓扑排序都没看出来
javascript·算法·leetcode
To_OC1 小时前
LC 208 实现 Trie 前缀树:曾被名字劝退,写完发现是送分题
javascript·算法·leetcode
天渺工作室1 小时前
实现一个adblock/adblock plus等浏览器广告拦截器检测插件
前端·javascript
kyriewen9 小时前
2026 年了,还在用 Node.js?Bun 迁移实战:20 分钟搞定,附踩坑记录
前端·javascript·node.js
AlfredZhao13 小时前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
minglie15 小时前
一个置换问题
javascript
默_笙15 小时前
🌀 别再手动写 Prompt 了!我让 AI 自己循环改到满意为止
javascript
To_OC1 天前
LC 994 腐烂的橘子:人人都说是 BFS 入门题,我却写了三遍才过
javascript·算法·leetcode
To_OC1 天前
LC 200 岛屿数量:经典 DFS 入门题,我第一次写居然连方向都搞错了
javascript·算法·leetcode
labixiong1 天前
实现一个能跑的迷你版Promise(一)
前端·javascript·面试