js笔记21

1.解决函数内的this指向数组

  (1)能够在函数外提早声明变量  _this/=thisapp

  (2)经过apply和call来修改函数内的this指向dom

  两者的区别:函数

  两者的用法不同,就是参数形式不同  fn.call(obj,a,b)/fn.apply(obj,[a,b])this

  两者表明的是将函数内的this换成obj以后而后把fn调用了spa

  (3)bind修改函数内的this3d

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

  fn.bind(obj,a,b)() 带上()就调用了对象

2.案例分析blog

  

  这就至关于写成了下面这种形式

  

  为何用了call以后里面的names仍是张三不是李四?

    fn.call(obj)是fn继承了obj中的全部属性,只要是继承的能够当作是共有的,天生自带的是私有的,在使用的时候,私有的有就不会找共有的

3.变量交换

  

4.找出数组中最大项和最小项

  例子:var a=[45,26,15,54,36,8,4]

  (1)借助math中的max

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

  (2)借助数组中sort()

    

  (3)假设法

    

    

5.对数组排序的方法

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

  (2)冒泡排序

    

 

    通常用于数据排序  游戏排名

6.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的正切值    对边/邻边

相关文章
相关标签/搜索