解決函式內this的指向:
1.可以在函式外提前宣告變數 一般情況下我們用 var _this/that=this
二者代表函式內的this換成obj之後然後把fn呼叫
3.bind修改函式內的this (fn.bind(obj,a,b))只是替換了this,但是不呼叫fn,返回的還是函式
fn.call(obj) (call()乙個引數必須是物件)
解析:是fn繼承了obj中的所有屬性,只要繼承的可以看成是公有的,天生自帶的私有的,在使用的時候,私有的就不會找公有的:
案例:function fn(){
this.name="張三"
console.log(this.name)
var obj={
name:"李四"
fn.call(obj) 最後的結果還是張三, 他相當於這種寫法 fn.prototype.name="李四"
變數的交換:
(舉例說明,比如有a杯茶水,還有b瓶飲料,如果想讓a盃放飲料,讓b瓶放茶水,只能在拿乙個空杯,把a杯的茶水放到空杯裡面,那麼a杯就空了,再把b瓶的飲料,倒進a杯就可以了,那麼b杯就空了,再把原來的空杯裡面裝茶水,倒進b杯就可以了)
案例:var a=4;
var b=3;
var n=null;
n=a;
a=b;
b=n;
console.log(a,b)
var arr=[45,26,15,54,36,8,4]
1.借助math中的max;(最簡單的方法)
2.借助陣列中的sort;
var fn=function(a,b){
retrun a-b
var s=a.sort(fn)
console.log(s[s.length-1])
3.假設法:(比較法)
var max=a[0]
var num=null;
for(var i=1;iif(maxnum=max;
max=a[i];
a[i]=null;
console.log(max)
4.氣泡排序
var num=null;
for(var j=a.length-1;j<=0;j--){
for(var i=0;iif(a[i]num=a[i];
a[i]=a[i+1];
a[i+1]=num
math數值物件;
js自帶的類 基類:object
子類:function(函式) array(陣列) number(數字) string(字串) date(日期) math(算術) regexp(正則) boolean(布林)
math()類 math物件,研究他的屬性和方法;
數學中的弧度與角度
1弧度=╥/180度 1角度=180/╥弧度
1.弧度中的╥ math.pi
2.返回平方根:math.sqrt(16) 返回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中的最小值;
8.math.random() 返回0-1之間的隨機數;
9.math.round() 返回四捨五入的數值;
10.math.sin(x) 返回x的正弦;(對邊比斜邊)
11.math.cos(x) 返回x的余弦; (臨邊比斜邊)
12.math.tan(x) 返回x的正切值 (對邊比臨邊)
13.math.asin(x) 返回x的反正弦;(知道邊求角)
14.math.acos(x) 返回x的反余弦; (知道邊求角)
15.math.atan(x) 返回x的反正切值 (知道邊求角
前端知識點
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 知識點 ul li 中預設選擇class active firstli rem...
前端知識點
css實現單行文字溢位顯示 overflow hidden text overflow ellipsis white space nowrap 實現多行文字溢位顯示 display webkit box webkit box orient vertical webkit line clamp 3 o...
前端知識點
關於html 1.html語義化標籤的理解 結構化的理解 能否寫出簡潔的html結構 seo優化 2.h5中新增的屬性 如自定義屬性data,類名classname等,新增表單元素,拖拽drag 3.h5中新增的api,修改的api,廢棄的api 稍作了解 離線儲存,audio,video 關於cs...