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的正切值    對邊/鄰邊

相關文章
相關標籤/搜索