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 相关文章推荐
关于图片验证码设计的思考
Jan 29 Javascript
js跳转页面方法总结
Jan 29 Javascript
jquery检测input checked 控件是否被选中的方法
Mar 26 Javascript
javascript获取当前的时间戳的方法汇总
Jul 26 Javascript
js实现的后台左侧管理菜单代码
Sep 11 Javascript
深入浅析JavaScript中prototype和proto的关系
Nov 15 Javascript
JS实现动态生成表格并提交表格数据向后端
Nov 25 Javascript
详解Angularjs filter过滤器
Feb 06 Javascript
JavaScript实战之菜单特效
Aug 16 Javascript
微信小程序实现图片轮播及文件上传
Apr 07 Javascript
vue-cli webpack配置文件分析
May 20 Javascript
Vue+element+cookie记住密码功能的简单实现方法
Sep 20 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下用rmdir实现删除目录的三种方法小结
2008/04/20 PHP
使用Limit参数优化MySQL查询的方法
2008/11/12 PHP
php生成图形验证码几种方法小结
2013/08/15 PHP
return false,对阻止事件默认动作的一些测试代码
2010/11/17 Javascript
javascript一元操作符(递增、递减)使用示例
2013/08/07 Javascript
jquery专业的导航菜单特效代码分享
2015/08/29 Javascript
jQuery操作iframe中js函数的方法小结
2016/07/06 Javascript
深入理解jquery中extend的实现
2016/12/22 Javascript
Angular JS数据的双向绑定详解及实例
2016/12/31 Javascript
微信小程序新增的拖动组件movable-view使用教程
2017/05/20 Javascript
利用原生js实现html5小游戏之打砖块(附源码)
2018/01/03 Javascript
详解vue微信网页授权最终解决方案
2019/06/16 Javascript
JS Thunk 函数的含义和用法实例总结
2020/04/08 Javascript
es6数组之扩展运算符操作实例分析
2020/04/25 Javascript
vue router返回到指定的路由的场景分析
2020/11/10 Javascript
vue 使用微信jssdk,调用微信相册上传图片功能
2020/11/13 Javascript
用ReactJS和Python的Flask框架编写留言板的代码示例
2015/12/19 Python
在Python中移动目录结构的方法
2016/01/31 Python
Django中间件工作流程及写法实例代码
2018/02/06 Python
python和shell监控linux服务器的详细代码
2018/06/22 Python
钉钉群自定义机器人消息Python封装的实例
2019/02/20 Python
python添加菜单图文讲解
2019/06/04 Python
Python实现中值滤波去噪方式
2019/12/18 Python
Python3搭建http服务器的实现代码
2020/02/11 Python
python中yield的用法详解
2021/01/13 Python
CSS3绘制不规则图形的一些方法示例
2015/11/07 HTML / CSS
世界上最大的冷却器制造商:Igloo Coolers
2019/07/23 全球购物
新闻编辑自荐信
2013/11/03 职场文书
《悯农》教学反思
2014/04/28 职场文书
初中教师业务学习材料
2014/05/12 职场文书
军训口号
2014/06/13 职场文书
机电系毕业生求职信
2014/07/11 职场文书
2014年学校工会工作总结
2014/12/06 职场文书
幼儿园教师自我评价
2015/03/04 职场文书
2015年老干部工作总结
2015/04/23 职场文书
2015年统计员个人工作总结
2015/07/23 职场文书