fn(); // fn.call() 普通函式呼叫 則函式中this === window
obj.sayhello();// 物件呼叫 函式中this === 該物件
new student(); // 構造函式呼叫 this === 例項物件
btn.onclick = fun // 通過事件觸發 this指的是繫結事件物件
setinterval(function () ,1000)
(function () )();
// 第乙個引數改變this指向,後面的寫傳值
fn.call(obj, 12, 12);
// bind() bind()可以改變函式中this指向 但它不會呼叫函式
// 返回由指定this值和初始化引數改造的原函式拷貝
// bind() 方法建立乙個新的函式,在 bind() 被呼叫時,這個新函式的 this 被指定為 bind() 的第乙個引數,而其餘引數將作為新函式的引數,供呼叫時使用。
var newfn = fn.bind(obj, 1, 2);
newfn();
for (var i = 0; i < list.length; i++)
})(i);
}
var object =
}var target = {}
/*// 淺拷貝
for (var key in object)
*/// 深拷貝
function deepcopy(target, source) else if (item instanceof object) ;
deepcopy(target[key], item);
} else }}
deepcopy(target, object);
深拷貝原理就是用遞迴判斷裡面是不是物件,如果是,繼續深入,如果不是,那就複製值 js高階函式
filter用於對陣列進行過濾。它建立乙個新陣列,新陣列中的元素是通過檢查指定陣列中符合條件的所有元素。注意 filter 不會對空陣列進行檢測 不會改變原始陣列 其中,函式 function 為必須,陣列中的每個元素都會執行這個函式。且如果返回值為 true,則該元素被保留 函式的第乙個引數 cu...
js 函式高階
所有例項物件都有乙個特別的屬性 顯式原型與隱式原型的關係 原型鏈object.prototype function.prototype.proto 理解分類 生命週期 包含哪些屬性 函式執行上下文建立和初始化的過程 函式 測試題1 function a var a console.log typeo...
前端 js高階函式
在這裡所謂高階函式,只是對函式方法進行組裝和高階。1 sort 對陣列進行排序 document.write 1,2,5,4 sort 這是最簡單不過的陣列排序語句了。實際上 array.prototype.sort 還能夠支援乙個可選的引數 比較函式 其形式如 sort fn fn是乙個函式型別 ...