1.命令式编程,只需要迭代数组,检查当前最小值是否大于数组元素,如果是更新最小值即可. var s = [2,3,4,5,6,7,8]; for(var i=0,m=s.length;i<m;i++){ var min = s[0]; if(s[i]<min){ min = s[i] } } console.log(min); 2.函数式编程,可用Math.min函数,传入比较的数组元素,使用es6的解构操作符(...),把数组转换成单个的元素. var s = [2,3,4,5,6,7,8]
es6中reduce()方法从左往右开始 参数:prev:它是上一次调用回调时返回的结果,每次调用的结果都会给prev cur:当前的元素 index:当前的索引 arr:循环的数组 返回值:函数累计处理的结果 demo:求数组的和. var a = [1,2,3,4,5,6,7,8,9,10] var str = a.reduce(function(prev,cur,index,arr){ return prev + cur ;})str // 55;求阶乘 var a = [1,2,3,4,
一.symbol 回顾数据类型: 基本类型(原始类型): String Number Boolean Undifined Null Symbol 引用类型: Objects 1.1 创建symbol 1. ES 6 为什么引入 Symbol 类型? a.为了确保每个属性的名称都是独一无二的,从根本上防止属性名的冲突. b.引入 Symbol 类型之后,对象的属性名就有了两种类型,一种是 String 类型的数据,另一种就是 Symbol 类型的数据 2. 怎样创建 Symbol 类型的数据呢