• 函数作为返回值


    //获取某个对象的类型是不是你传入的类型
    //[10,20,30]是不是"[object Array]"
    //type------是变量----是参数-----"[object Array]"
    //obj-----是变量-----是参数-----[10,20,30]
    function getFunc(type) {
    return function (obj) {
    return Object.prototype.toString.call(obj)===type;//判断这个对象的类型和传入的的类型是不是同一个类型
    }
    }
    var ff=getFunc("[object Array]");
    var result=ff([10,20,30]);
    console.log(result);//true

    var ff1=getFunc("[object object]");
    var dt=new Date();
    var result1=ff1(dt);
    console.log(result1);//false



    案例:
    排序:
    var arr=[1,3,5,7,9,2,4,6,8];
    //排序---函数作为参数使用,匿名函数作为sort方法的参数使用,那么此时匿名函数中有两个参数
    arr.sort(function (obj1,obj2) {
    if(obj1>obj2){
    return 1;
    }else if(obj1==obj2){
    return 0;
    }else {
    return -1;
    }
    });
    console.log(arr);


    var arr2=["bdef","abcd","bcde","acde"];
    arr2.sort(function (a,b) {
    if(a>b){
    return 1;
    }else if(a==b){
    return 0;
    }else {
    return -1;
    }
    });
    console.log(arr2);




    //三部电影,有名字,大小和时间
    function File(name,size,time) {
    this.name=name;
    this.size=size;
    this.time=time;
    }
    var f1=new File("jak.avi","400M","1996-12-12");
    var f2=new File("tak.avi","200M","2006-12-12");
    var f3=new File("xak.avi","600M","2016-12-12");
    var arr=[f1,f2,f3];
    function fn(attr) {
    //函数作为返回值
    return function getSort(obj1,obj2) {
    if(obj1[attr]>obj2[attr]){
    return 1;
    }else if(obj1[attr]==obj2[attr]){
    return 0;
    }else {
    return -1;
    }
    }
    }
    var ff=fn("name");//===============
    arr.sort(ff);
    for(var i=0;i<arr.length;i++){
    console.log(arr[i].name+"====="+arr[i].size+"====="+arr[i].time);
    }
  • 相关阅读:
    阿里云部署SSL证书详解
    PHP网站从Apache转移到Nginx后产生404错误的原因和解决办法
    APACHE服务器出现No input file specified.的完美解决方案
    Lnmp修改php.ini配置
    CGI,FASTCGI,PHPFPM的区别
    CLR Via CSharp读书笔记(25):线程基础
    Java Network Programming FAQ.
    SchemaFree MySQL vs NoSQL
    ERROR: JDWP Unable to get JNI 1.2 environment
    Firebug Internals
  • 原文地址:https://www.cnblogs.com/lujieting/p/10082448.html
Copyright © 2020-2023  润新知