修改this指向

傳參

不傳參數(shù)時 this 默認(rèn)指向 window
call 接受散的數(shù)據(jù),如果是數(shù)組視為一條數(shù)據(jù)
apply 只能是數(shù)組
bind 接受散的數(shù)據(jù),如果是數(shù)組視為一條數(shù)據(jù)

執(zhí)行問題

callapply 都會主動執(zhí)行
bind 不會主動執(zhí)行

修改調(diào)用函數(shù) this 指向的對象,調(diào)用函數(shù)的實參依次寫在后面

任意對象的原型上的方法,要取這個方法的調(diào)用者,直接 this

字符串可以解析字符串
setTimeOut('fn(1, 2, 3)', 1000);
時間一到就把字符串 去掉 函數(shù)又是立即執(zhí)行的

兼容bind方法 (IE8 及其一下不支持bind方法)

        // 沒有bind方法才調(diào)用
        if (!Funtion.prototype.bind) {
            Function.prototype.bind = function () {

                // 拿到修改this指向的對象
                var bindThis = arguments[0];

                // 拿到后面的所有參數(shù)
                var arg = Array.prototype.slice.call(arguments, 1);

                // 拿到調(diào)用者
                var that = this;

                return function () {
                    that.apply(bindThis, arg);
                }
            }
        }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1 放大鏡實例 頁面結(jié)構(gòu):創(chuàng)建左右兩個容器,左邊容器中添加一張圖片背景圖,右邊容器中添加一張與背景圖成比例放大的圖...
    果木山閱讀 341評論 0 0
  • 第5章 引用類型(返回首頁) 本章內(nèi)容 使用對象 創(chuàng)建并操作數(shù)組 理解基本的JavaScript類型 使用基本類型...
    大學(xué)一百閱讀 3,690評論 0 4
  • 1.概念 在JavaScript中,this 是指當(dāng)前函數(shù)中正在執(zhí)行的上下文環(huán)境,因為這門語言擁有四種不同的函數(shù)調(diào)...
    BluesCurry閱讀 1,251評論 0 2
  • 函數(shù)和對象 1、函數(shù) 1.1 函數(shù)概述 函數(shù)對于任何一門語言來說都是核心的概念。通過函數(shù)可以封裝任意多條語句,而且...
    道無虛閱讀 4,961評論 0 5
  • 黃昏風(fēng)慢,幾分慵意,樹影搖散。 柴扉無有客擾,壺中小酒,醺于爐畔。 恰是飛霞正好,喚貓兒來看。 酌半杯,余味綿長,...
    當(dāng)初不該下凡閱讀 252評論 1 1

友情鏈接更多精彩內(nèi)容