1.解決函數內this指向數組
1.能夠在函數外提早聲明變量_this/that=thisapp
2.經過apply和call來修改函數內的this指向dom
(1)兩者區別 用法是同樣的,就是參數形式不同 fn.call(obj,a,b)/fn.apply(obj,[a,b])函數
(2)兩者表明的是將函數內的this換成obj以後把fn調用
this
3.bind修改函數內的thisspa
fn.bind(obj,a,b)只是替換了this可是不調用fn,返回的仍是函數3d
fn.bind(obj,a,b)()regexp
2.對象
至關於寫成
blog
爲何用了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()