Object.values()的用法

这篇具有很好参考价值的文章主要介绍了Object.values()的用法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Object.keys()

一、官方定义

Object.values() 方法返回一个给定对象自身的所有可枚举属性值的数组,值的顺序与使用 for…in 循环的顺序相同(区别在于 for-in 循环枚举原型链中的属性)。

二、语法

Object.values(obj)
参数
obj
被返回可枚举属性值的对象。
返回值
一个包含对象自身的所有可枚举属性值的数组。
描述
Object.values() 返回一个数组,其元素是在对象上找到的可枚举属性值。属性的顺序与通过手动循环对象的属性值所给出的顺序相同。

三、举例说明

例子一
var obj1 = {name: '光头强', age: '18', height: '177'}

const list1 = Object.values(obj1);
console.log(list1)  // 得到:  ['光头强', '18', '177']
例子二
var obj2 = {
  gtq: {name: '光头强',age: '18',height: '177'},
  xd: {name: '熊大',age: '12',height: '190'},
  xe: {name: '熊二',age: '10',height: '188'}
}

const list2 = Object.values(obj2);
console.log(list2)  
// 得到: 
/**
 *  [
 *    {name: '光头强', age: '18', height: '177'},
 *    {name: '熊大', age: '12', height: '190'},
 *    {name: '熊二', age: '10', height: '188'}
 *  ]
 * 
*/
例子三
// 例子三
// 也可以配合循环讲相同的数组结核
var obj3 = [
  {dhp:'熊出没',name:"光头强",age:'18',tall:'170'},
  {dhp:'熊出没',name:"熊大",age:'12',tall:'190'},
  {dhp:'熊出没',name:"熊二",age:'10',tall:'188'},
  {dhp:'羊村记事',name:"喜洋洋",age:'8',tall:'60'},
  {dhp:'羊村记事',name:"沸羊羊",age:'9',tall:'80'},
  {dhp:'羊村记事',name:"懒洋洋",age:'10',tall:'60'},
  {dhp:'西游记',name:"孙悟空",age:'500',tall:'130'},
  {dhp:'西游记',name:"猪八戒",age:'150',tall:'140'},
  {dhp:'西游记',name:"白龙马",age:'200',tall:'150'}
]

// 封装一个方法
function getNewList(data) {
  let newObj = {}
  obj3.forEach((item, index) => {
  // 解构出每一个对象里面 dhp字段的值---值值值
  let { dhp } = item
  // 如果在这个新对象里面没有找到,则新增一个对象
  if (!newObj[dhp]) {
    // 重构对象
    newObj[dhp] = {
      dhp,   
      children: [],
    }
  }
  // 如果在对象里面找到有相同的 dhp 字段的值,则Push进入children里面
  newObj[dhp].children.push(item)
  })
  let newArr = Object.values(newObj)
  return newArr
}

const list3 = getNewList(obj3);
console.log(list3)

打印结果:
object.values()的用法,javascript,前端,vue.js文章来源地址https://www.toymoban.com/news/detail-625608.html

到了这里,关于Object.values()的用法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 前端js 数据结构:对象 object、数组Array 、Map 的创建、增删改 / 遍历数据

    对象:由一组键值对组成的无序集合,可以通过键来获取对应的值。 每个键值对中的键是唯一的,值可以是任意类型的数据。 对象通常用来表示实体的属性和方法。 1.1.1 对象字面量(最常用): {} 对象字面量:通过在大括号 {} 中定义对象的属性和方法来创建对象。 这是最简单

    2024年01月21日
    浏览(54)
  • value of type `java.lang.Long` from Object value (token `JsonToken.START_OBJECT`)

    报错信息: Cannot deserialize value of type ` java.lang.Long ` from Object value (token `JsonToken.START_OBJECT`) 与之相似的还有: JSON parse error: Cannot deserialize value of type ` java.lang.Integer ` from Boolean value   翻译过来意为 :不能反序列化的值  类型 java.lang.Long ---- Object 类型,表示代码试图反序列化时

    2024年02月04日
    浏览(40)
  • Vue.config.js 配置报错 ValidationError: Invalid options object.

    接手了别人的项目,在配置 devServer 时直接照搬了之前的配置结果报错 这段报错信息意思是Dev Server已使用与API模式不匹配的选项对象初始化,其中明确指出是属性 ‘disableHostCheck’,于是我屏蔽了这个属性,发现能启动成功 此时我查看了之前和这次的项目的webpack的版本发现

    2024年02月11日
    浏览(110)
  • Vue2和vue3中双向数据绑定的原理,ES6的Proxy对象代理和JavaScript的Object.defineProperty,使用详细

    简介: Object.defineProperty大家都知道,是vue2中双向数据绑定的原理,它 是 JavaScript 中一个强大且常用的方法,用于定义对象属性,允许我们精确地控制属性的行为,包括读取、写入和删除等操作; 而Proxy是vue3中双向数据绑定的原理,是ES6中一种用于创建代理对象的特殊对象,

    2024年02月15日
    浏览(46)
  • 解决 JavaScript 输出为 [object Object] 的问题

    🙈作者简介:练习时长两年半的Java up主 🙉个人主页:程序员老茶 🙊 ps:点赞👍是免费的,却可以让写博客的作者开兴好久好久😎 📚系列专栏:Java全栈,计算机系列(火速更新中) 💭 格言:种一棵树最好的时间是十年前,其次是现在 🏡动动小手,点个关注不迷路,感

    2024年02月04日
    浏览(42)
  • Cannot invoke “Object.toString()“ because the return value of “java.util.Map.get(Object)“ is null

    在写瑞吉外卖的时候遇到 Object.toString()为空的问题,最后发现是 前端没有往后端传递数据,第一个图片是只传的phone最后改为from第二个是没有写函数sendMsgApi,改正后,发现登录进去又回退到主页面,发现是因为在过滤器中要保存session,保存后才能发送,再次添加形参Http

    2024年02月02日
    浏览(55)
  • 使用stream流对List<Map<String, Object>>集合根据value进行排序

    第一步:初始化数据 ========================================================= 第二步:开始排序 ① 根据数字排序 打印结果 ② 根据字符串排序 打印结果 ③ 根据时间类型排序 打印结果 总结:String类型是万金油的排序方式,基本都可以用!!! 补充一个排序方法 打印结果 就这样。。。

    2024年02月16日
    浏览(54)
  • Python Selenium报错:ValueError: Timeout value connect was <object object at 0x000001CCD4EC4540>, but i

    之前学习Python过程中做过接口测试,有安装urllib3,版本是2.0.7 之后又安装了Selenium3.141.0版本,结果巨坑来袭,写了简单代码验证安装效果,结果报错 代码如下: 报错:ValueError: Timeout value connect was object object at 0x000001CCD4EC4540, but it must be an int, float or None. 原因分析:Selenium版本

    2024年03月09日
    浏览(43)
  • JavaScript之Object.defineProperty()

    经常使用的定义与赋值方法 obj.prop =value 或者 obj[\\\'prop\\\']=value Object.defineProperty() 的作用就是直接在一个对象上定义一个新属性,或者修改一个已经存在的属性 obj 需要定义属性的当前对象 prop 当前需要定义的属性名 desc 属性描述符 一般通过为对象的属性赋值的情况下,对象的属

    2024年02月09日
    浏览(35)
  • Field error in object ‘xxx‘ on field ‘xxx‘: rejected value [xx];

    字段上对象“xxx”中的field错误,拒绝了值[xxx]。意思是:在Springboot等其他框架中编写程序时,前端传入的数据例如 前端代码如下 这个phone从客户端接收的值与后端entity中定义的属性值不匹配(与数据库定义的值的类型不匹配)时,就发生接收值类型错误。 解决办法: 看是

    2024年02月10日
    浏览(159)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包