zoukankan      html  css  js  c++  java
  • JS高级解决函数内的this指向

    1.解决函数内的this指向

    1.可以再汉书外提前声明变量_this/that=this;

    2.通过apply和call来修改汉书内的this指向

    (1)二者区别 用法是一样的,就是参数形式不一样。

    (2)二者代表的是将函数内的this换成obj之后然后吧fn调用

    3.bind修改函数内的This

    fn.bind(obj,a,b只是替换了this但是不调用fn,返回的还是函数。

    fn.bind(obj,a,b)

    1. 变量交换

    var a=4;

        var b=3;

        var n=null;

        n=a;

        a=b;

        b=n;

        console.log(a,b)

    找出数组中的最大项和最小项

    var a=[45,26,15,54,36,8,4];

    1. 借助math中max

    Math.max.apply(null,a) 返回值就是最大值

    1. 借助数组中的sort()

    var fn=function(a,b){

            return a-b

        }

        var s=a.sort(function(a,b){return a-b})

        console.log(s[s.length-1])

    3.假设法

     var min=a[0] //假设第一个就是我们需要的最小值

     var num=null;

     for(var i=1;i<a.length;i++){

        if(min>a[i]){

            num=min;

            min=a[i];

            a[i]=num

        }

     }

     console.log(min)

    对数组排序的方法

    1.借助array中的sort(function(a,b){return a-b})

    2.冒泡排序

    var arr=[45,26,15,54,36,8,4];

    var num=null

    for(var j=arr.length-1;j>=0;j--){

    //for(var k=0;k<arr.length-1;k++){

        //for(var i=0;i<arr.length-k;i++){

        for(var i=0;i<=j;i++){

            if(arr[i]>arr[i+1]){

                num=arr[i];

                arr[i]=arr[i+1];

                arr[i+1]=num

            }

        }

    }

    数据库排序   游戏排名

    二分查找

     

    4.Math 数值对象

    Js自带的类  array number string function date math regexp boolean

    Math类 math对象 又研究一堆的属性和方法

     

    数学中的弧度和角度

    1.弧度的π   Math.PI

    2.返回平方根  Math.sqrt(16)

    3.Math.abs(x) 返回的绝对值

    4.Math.ceil(x) 返回x的上舍入

    5.Math.floor(x) 返回x的下舍入

    6.Math.max(a,b,c,d)返回a,b,c,d中的最大值 a,b,c,d必须是数字

    7.Math.min(a,b,c,d)返回a,b,c,d中的最小值 a,b,c,d必须是数字

    8.Math.random()返回0-1之间的随机数

    9.Math.round(x) 返回对x四舍五入后的数值

    10.Math.sin(x) 返回x的正弦值  对边比斜边

    11.Math.cos(x) 返回x的余弦值  邻边/斜边

    12.Math.tan(x) 返回x的正切值  对边/邻边

    13.Math.asin(x)

    14.Math.acos()

    15 math.atan()

  • 相关阅读:
    WebRTC视频采集中的约束有哪些和具体的使用方法
    解决WebRTC中不同的浏览器之间适配的问题
    WebRTC如何获取音频视频设备
    用C#调用外部DLL
    null值与非null只比较大小时,只会返回false
    jsonp实现js跨域请求
    同一域名的ASP.NET网站实现Session共享
    machinekey相关信息
    从bbs.3dmgame.com与qq的登录解析oauth2.0协议
    asp.net使用wsdl文件调用接口,以及调用SSL接口报错“根据验证过程 远程证书无效”的处理
  • 原文地址:https://www.cnblogs.com/anwenying/p/10097754.html
Copyright © 2011-2022 走看看