前端进阶之旅前端进阶之旅
基础篇
进阶篇
高频篇
精选篇
手写篇
原理篇
面经篇
自检篇
每日一题
  • 综合
    • 综合题型
    • 其他问题
    • 设计模式
    • 思维导图
    • 学习路线
  • 前端基础
    • HTTP
    • 浏览器
    • 计算机基础
  • 进阶学习
    • NPM工作流
    • Docker
    • Canvas
    • Node学习指南
    • 前端综合文章
  • 其他
    • Handbook
    • 职场话题
    • CSS可视化
小程序题库
公众号动态
博客动态
开发者导航
基础篇
进阶篇
高频篇
精选篇
手写篇
原理篇
面经篇
自检篇
每日一题
  • 综合
    • 综合题型
    • 其他问题
    • 设计模式
    • 思维导图
    • 学习路线
  • 前端基础
    • HTTP
    • 浏览器
    • 计算机基础
  • 进阶学习
    • NPM工作流
    • Docker
    • Canvas
    • Node学习指南
    • 前端综合文章
  • 其他
    • Handbook
    • 职场话题
    • CSS可视化
小程序题库
公众号动态
博客动态
开发者导航

业务中处理数据结构常用的JS方法

首页
2018-08-12 19:11:43
Front-End
JavaScriptAPI

# 一、由map、filter、reduce、find展开

filter

filter方法可以筛除数组和类似结构中不满足条件的元素,并返回满足条件的元素组成的数组。

const integers = [1, 2, 3, 4, 6, 7];
const evenIntegers = integers.filter(i => i%2 === 0);
// evenIntegers的值为[2, 4, 6]
@前端进阶之旅: 代码已经复制到剪贴板

find

find返回数组或类似结构中满足条件的第一个元素

const posts = [
  {id: 1, title: 'Title 1'},
  {id: 2, title: 'Title 2'}
];
// 找出id为1的posts
const title = posts.find(p => p.id === 1).title;
@前端进阶之旅: 代码已经复制到剪贴板

map

map方法的作用在于处理流式数据,比如数组。我们可以把它想象成所有元素都要经过的一个转换器。

const integers = [1, 2, 3, 4, 6, 7];
const twoXIntegers = integers.map(i => i*2);
// twoXIntegers现在是 [2, 4, 6, 8, 12, 14],而integers不发生变化。
@前端进阶之旅: 代码已经复制到剪贴板

reduce

当你想要将多个数据放进一个实例中时,你可以使用一个reducer

const posts = [
  {id: 1, upVotes: 2},
  {id: 2, upVotes: 89},
  {id: 3, upVotes: 1}
];
const totalUpvotes = posts.
fe
  • 一、由map、filter、reduce、find展开
  • 二、向对象数组添加新元素
  • 三、为一个数组创建视图
  • 四、向数组中新增元素
  • 五、为对象新增一组键值对
  • 六、使用变量作为键名为对象添加键值对
  • 七、修改数组中满足条件的元素对象
  • 八、找出数组中满足条件的元素
  • 九、删除目标对象的一组属性
  • 十、将对象转化成请求串
  • 十一、获取数组中某一对象的下标

← 小程序之自定义组件在小程序中集成redux/immutable/thunk第三方库 →