zoukankan      html  css  js  c++  java
  • 12.10 改变this的指向

    1.解决函数内this指向

      1.可以在函数外提前声明变量_this/that=this

      2.通过apply和call来修改函数内的this指向

        (1)二者区别   用法是一样的,就是参数形式不一样    fn.call(obj,a,b)/fn.apply(obj,[a,b])

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

      3.bind修改函数内的this

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

          fn.bind(obj,a,b)()

    2.

    相当于写成

    为什么用了call之后里面的names还是张三不是李四??

      fn.call(obj)是fn继承了obj中的所有属性,只要是继承的可以看成是公有的,天生自带的是私有的,在使用的时候,私有的有就不会找公有的。

    3.变量交换

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

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

    1.借助math中的max

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

    2.借助数组中的

       

    3.假设法

      

    对数组排序的方法

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

       2.冒泡排序

      

    二分查找

      4.Math数值对象

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

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

          数学中的弧度和角度

        1.弧度的π      Math.PI

           2 .返回平方根   Math.sprt(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()

        15Math.atan()

  • 相关阅读:
    setlocale set the current locale
    测试一个目录下的文件共有多少行
    ping中用到的校验和算法
    atomic integer operations P176
    我要理解1为什么是0xffffffff,所以写了下面的程序理解。
    贝叶斯网络中一个节点的类
    bash 的浮点除法
    shell(1)
    AndroidBroadcast详解与汇总
    AndroidActivity详解与汇总
  • 原文地址:https://www.cnblogs.com/jiangningjn/p/10156018.html
Copyright © 2011-2022 走看看