JS实现将对象转化为数组的方法分析


Posted in Javascript onJanuary 21, 2019

本文实例讲述了JS实现将对象转化为数组的方法。分享给大家供大家参考,具体如下:

前言

其实这本来应该是一个很基础的问题了,但我之做一想记录一下是因为之前因为对象转数组的时候卡住了后来弄了出来,但最近再遇到这个问题时竟然又卡主了,所以,关于这个问题,如何把一个对象{'未完成':5, '已完成':8, '待确认':4, '已取消':6}转为[{"未完成":5},{"已完成":8},{"待确认":4},{"已取消":6}],你已经知道如何操作了,那这篇文章你也就没有必要看了。

对象的两种取值方式

我们都知道,JS中对象有两种取值方式,通过在.后面直接加属性名取值,这也是我们最常使用的一种方式,例如:

let obj = {name: 'wan'};
console.log(obj.name); //wan

这是最普通的一种方式,还有一种方式我们用的不太多,就是使用[]包住属性名取值,类似于数组那样,例如

let obj = {name: 'wan'};
console.log(obj[name]); //wan

那二者之前有什么区别呢,如果对于一个已知的对象来说,几乎是没什么区别的,但是如果我们需要的对象的key是变量呢?这就回到了我们文章开始是提到的问题,如何将一个对象转化为数组

将对象转化为数组

我们文章开始例子中的对象是

let obj = {'未完成':5, '已完成':8, '待确认':4, '已取消':6};

如果目标数组只是为了得到对象的key的集合或者value的集合还是相对容易的

var arr = []
for (let i in obj) {
  arr.push(obj[i]); //属性
  //arr.push(obj[i]); //值
}
console.log(arr);

如果像我文中开始的需求的话就只需要改变一下push进去的内容为一个对象即可

var arr = []
for (let i in obj) {
  let o = {};
  o[i] = obj[i];
  arr.push(o)
}
console.log(arr);

感兴趣的朋友还可以使用本站在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行结果。

更多关于JavaScript相关内容可查看本站专题:《JavaScript中json操作技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
jquery命令汇总,方便使用jquery的朋友
Jun 26 Javascript
js调用图片隐藏&显示实现代码
Sep 13 Javascript
javascript实现促销倒计时+fixed固定在底部
Sep 18 Javascript
Js实现滚动变色的文字效果
Jun 16 Javascript
从JQuery源码分析JavaScript函数的apply方法与call方法
Sep 25 Javascript
JavaScript实现找质数代码分享
Mar 24 Javascript
jquery自定义插件开发之window的实现过程
May 06 Javascript
AngularJS在IE下取数据总是缓存问题的解决方法
Aug 05 Javascript
浅析jQuery操作select控件的取值和设值
Dec 07 Javascript
bootstrap与pagehelper实现分页效果
Dec 29 Javascript
angularjs实现table表格td单元格单击变输入框/可编辑状态示例
Feb 21 Javascript
详解vue3.0 的 Composition API 的一种使用方法
Oct 26 Javascript
vue中过滤器filter的讲解
Jan 21 #Javascript
vue计算属性computed、事件、监听器watch的使用讲解
Jan 21 #Javascript
VUE v-model表单数据双向绑定完整示例
Jan 21 #Javascript
js中实例与对象的区别讲解
Jan 21 #Javascript
详解vue挂载到dom上会发生什么
Jan 20 #Javascript
vue-cli3 从搭建到优化的详细步骤
Jan 20 #Javascript
微信小程序实现富文本图片宽度自适应的方法
Jan 20 #Javascript
You might like
《PHP编程最快明白》第七讲:php图片验证码与缩略图
2010/11/01 PHP
仿AS3实现PHP 事件机制实现代码
2011/01/27 PHP
解析如何在PHP下载文件名中解决乱码的问题
2013/06/20 PHP
使用CodeIgniter的类库做图片上传
2014/06/12 PHP
总结PHP代码规范、流程规范、git规范
2018/06/18 PHP
postman的安装与使用方法(模拟Get和Post请求)
2018/08/06 PHP
PHP连接sftp并下载文件的方法教程
2018/08/26 PHP
js 发个判断字符串是否为符合标准的函数
2009/04/27 Javascript
当jQuery遭遇CoffeeScript的时候 使用分享
2011/09/17 Javascript
15个常用的jquery代码片段
2015/12/19 Javascript
JavaScript String 对象常用方法总结
2016/04/28 Javascript
JS采用绝对定位实现回到顶部效果完整实例
2016/06/20 Javascript
web前端开发upload上传头像js示例代码
2016/10/22 Javascript
AngularJS实现动态编译添加到dom中的方法
2016/11/04 Javascript
bootstrap模态框跳转到当前模板页面 框消失了而背景存在问题的解决方法
2020/11/30 Javascript
Vue.js组件tree实现无限级树形菜单
2016/12/02 Javascript
如何解决vue与传统jquery插件冲突
2017/03/20 Javascript
AngularJS1.X学习笔记2-数据绑定详解
2017/04/01 Javascript
从零开始学习Node.js系列教程二:文本提交与显示方法
2017/04/13 Javascript
JS基于正则表达式的替换操作(replace)用法示例
2017/04/28 Javascript
layui导航栏实现代码
2017/05/19 Javascript
让nodeJS支持ES6的词法----babel的安装和使用方法
2017/07/31 NodeJs
vue使用高德地图点击下钻上浮效果的实现思路
2019/10/12 Javascript
微信小程序swiper左右扩展各显示一半代码实例
2019/12/05 Javascript
python去掉字符串中重复字符的方法
2014/02/27 Python
教你用一行Python代码实现并行任务(附代码)
2018/02/02 Python
Python使用 Beanstalkd 做异步任务处理的方法
2018/04/24 Python
python查询文件夹下excel的sheet名代码实例
2019/04/02 Python
最耐用行李箱,一箱永流传:Briggs & Riley(全球终身保修)
2017/12/07 全球购物
《北京的春节》教学反思
2014/04/07 职场文书
项目建议书范文
2014/05/12 职场文书
乡镇干部个人对照检查材料(群众路线)
2014/09/26 职场文书
2014年销售工作总结与计划
2014/12/01 职场文书
穆斯林的葬礼读书笔记
2015/06/26 职场文书
2015年暑期见闻
2015/07/14 职场文书
golang用type-switch判断interface的实际存储类型
2022/04/14 Golang