1.复习的函数

  函数是由关键字function声明的,他是一个引用数据类型,是Function的实例,在调用的时候会开辟一个私有空间

  2.函数的成员

  

  arguments:null  (是实参构成的数组集合)

  caller:null(是这个函数的调用者,函数在A个函数内调用,那么A就是这个函数的调用者,在window下caller是null)

  案例:

    function fn(){

      console.log(fn.caller)

    }

    function f(){

      fn(23,56)

    }

    f()         (解析:fn在f函数内调用,那么f就是fn的调用者)

  length:形参的个数;

  name:是函数名,只跟定义有关,不能修改

  arguments 函数的实参构成的数组集合 他下面的参数有

  callee:是当前函数本身;

  length:实参的个数;

  用递归写一个1-10的求和;

  var sum=0;

  function add(m){

    sum=sum+m

    if(m<1){

      return sum

    }

    else{

      return add(m-1)

    }

  var as=add(10)

  arguments.callee,也可以代替递归(因为他指向当前函数本身)

  3.函数作为参数;

    1.匿名函数传参

    2.命名函数传参,只传命名函数的函数名,不带(),否则传的是return 返回值;

  4.数组的方法

  sort(function(a,b){

    return a-b

    })        仅仅是对数字的从小到大排序;

  还有一种全能的方法,可以对任何东西排序;

  function getsort(a,b){

    if(a>b){

      return 1

    }

    else if(a==b){

      return 0;

    }

    else{

      return  -1

    }

  这是从小到大排序,如果从大到小排序 1和-1;换下位置;

  跟数据类型一些方法:

  1.检测数据类型 typeof 这是一个检测的方法;

  2.instanceof 这是一个判断的方法,返回值true和false;

  3.Object.prototype.toString()  返回的是以字符串"[object Object]"   第一个参数:是对象数据类型 ;第二个参数:具体是那种数据类型;这种写法得不到具体的第二个参数;

  所以需要在后面加.call()    Object.prototype.toString.call()   这种写法是完美的;

  es6新增数组的方法;

  之前的方法:1.concat()  2.push()  3.sort()  4.toString()  5.splice()  6.unshift()  7.reverse()  8.pop()  9.join()  10.shift()  11.indexOf()  12.slice()

  es6新增的方法:

  以 var arr=[12,65,47,13,10,13]为例;

  1.every()  用于检测数组中每个元素是否都满足某个条件,返回值是true和false;

  案例:

    var as=arr.every(function(value){
      return value>=18
    })
      console.log(as)

  2.filter()  用于检测数组中某个元素是否都满足某个条件,返回满足条件所有元素构成的新数组;

  案例:    

    var as=arr.filter(function(value){
      return value>12
     })

    console.log(as)

  3.find()  用于检测数组中第一个满足条件的元素,并返回;

  案例:

    var a=arr.find(function(va){
      return va>18
    })
    console.log(a)  

  4.forEach()  用于对数组进行遍历;

  案例:

    arr.forEach(function(value){
      console.log(value)
     })

  5.Map()  用于对数组进行遍历,将每个元素都传入到回调函数中加工,并返回新的结果,最后得到的是元素加工后组成的新数组;

  案例:

    var as=arr.map(function(va){
      return va+10;
     })
     console.log(as)

  由于这是es6新的方法,所以有的编辑器会报错,可以不用管他,最新的浏览器已经可以识别这个方法了    

es6数组的方法的更多相关文章

  1. JavaScript ES6 数组新方法 学习随笔

    JavaScript ES6 数组新方法 学习随笔 新建数组 var arr = [1, 2, 2, 3, 4] includes 方法 includes 查找数组有无该参数 有返回true var ...

  2. ES6 数组遍历方法的实战用法总结(forEach,every,some,map,filter,reduce,reduceRight,indexOf,lastIndexOf)

    目录 forEach every some map filter reduce && reduceRight indexOf lastIndexOf 前言 ES6原生语法中提供了非常多 ...

  3. ES6数组去重方法

    Set实例的方法分为两大类:操作方法(用于操作数据)和遍历方法(用于遍历成员),操作方法有:add(value).delete(value).has(value).clear():遍历方法有:keys ...

  4. ES6 数组的方法

     数组的类 数组的类是Array 数组的定义 var arr=[元素] var arr=new Array(3) 数字3,代表有三个元素或者三个空位 如果数组定义采用 new 实例,类中跟的是一个数字 ...

  5. es6 数组扩展方法

    1.扩展运算符 含义: 扩展运算符,三个点(...),将一个数组转为用逗号分隔的参数顺序. 例如: console.log([1,2,3]); console.log(...[1,2,3]);   结 ...

  6. es6数组新方法

    (1)Array.from(aarr,fn,obj) function fn(dr, sd, d) { /*Array.from 类数组转化为数组*/ console.log(arguments) v ...

  7. es6 数组新增方法

    1.Array.from(): 这个函数的作用是将类似数组的对象转化为数组,比如DOM对象 let arrayLike = {      "0":"TangSir&quo ...

  8. ES6数组新增方法总结

    关于数组中forEach() .map().filter().reduce().some().every()的总结 let arr = [1, 2, 3, 4, 5] // forEach遍历数组 a ...

  9. ES6 数组去重 方法用了filter或者 indexOf Array.from

随机推荐

  1. hdu5173 How Many Maos Does the Guanxi Worth

    #include<bits/stdc++.h> using namespace std; #define INF 0x3f3f3f3f ]; ]; ][]; void dijkstra(i ...

  2. hdu4059 The Boss on Mars 容斥原理

    On Mars, there is a huge company called ACM (A huge Company on Mars), and it’s owned by a younger bo ...

  3. NK实习项目配置

    1.复制eclipse和项目 2.配置tomcat6,现在只能用tomcat6 3.tomcat6插件eclipse是默认有的,只需要配置一下 http://blog.csdn.net/u014079 ...

  4. 使用patroni 解决hasura graphql-engine pg 数据库ha的问题

    环境准备 机器pg 数据库地址修改为haproxy 的ip地址,端口是haproxy的tcp 端口,配置比较简单 hasura graphql-engine docker-compose versio ...

  5. 将数组A中的内容和数组B中的内容进行交换。(数组一样大)

    将两个数组中的内容相互交换,必须是两个数组的内容一样大小. 思路: 结合两个整型变量之间的交换,同样可以用于内容一样大的数组.用异或关系相互交换. #include<stdio.h> in ...

  6. Java中的数组与集合

    此文转载自:http://student-lp.iteye.com/blog/2082362 在java编程的过程中,我们不能确定某一类型的对象到底会需要多少,为了解决这个问题,java提供了容纳对象 ...

  7. 【转】C#获取当前日期时间(转)

    我们可以通过使用DataTime这个类来获取当前的时间.通过调用类中的各种方法我们可以获取不同的时间:如:日期(2008-09-04).时间(12:12:12).日期+时间(2008-09-04 12 ...

  8. jsp中如何清除缓存(转)

    <% response.setHeader("Cache-Control","no-cache"); //HTTP 1.1 response.setHea ...

  9. NET设计模式 第二部分 结构性模式(12):享元模式(Flyweight Pattern)

    享元模式(Flyweight Pattern) ——.NET设计模式系列之十三 Terrylee,2006年3月 摘要:面向对象的思想很好地解决了抽象性的问题,一般也不会出现性能上的问题.但是在某些情 ...

  10. hadoop行业技术创新解决方案

    如今有很多公司都在努力挖掘他们拥有的大量数据,包括结构化.非结构化.半结构化以及二进制数据等,来探索对数据的深入利用. 大多数公司估计他们只分析了已有数据的12%,剩余88%还没有被充分利用.大量的数 ...