国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JavaScript call()和apply()方法

2019-11-11 07:26:10
字體:
來源:轉載
供稿:網友
我們可以將call()和apply()方法看做是某一個對象的方法,通過調用方法的形式來間接調用函數。call()和apply()的第一個實參是要調用函數的母對象,它是調用上下文,在函數體內通過this來獲得對它的引用。要想以對象o的方法來調用函數f(),可以這樣使用call()和apply():f.call(o);f.apply(o);每行代碼和下面的代碼功能類似(假設對象o中預先不存在名為m的屬性):o.m = f;      //將f存儲為o的臨時方法o.m();         //調用它,不傳入參數delete o.m;  //刪除臨時方法對于call()來說,第一個調用上下文實參之后的所有實參就是要傳入待調用函數的值。比如,以對象o的方法的形式調用函數f(),并傳入兩個參數,可以使用這樣的代碼:f.call(o, 1, 2);apply()方法和call()類似,但傳入實參的形式和call()有所不同,它的實參都放入一個數組當中:f.apply(o, [1, 2]);如果一個函數的實參可以是任意數量,給apply()傳入的參數數組可以是任意長度的。比如,為了找出數組中最大數值的元素,調用Math.max()方法的時候可以給apply()傳入一個包含任意個元素的數組:var biggest = Math.max.apply(Math, arr_of_numbers);需要注意的是,傳入apply()的參數數組可以是類數組對象也可以是真實數組。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 兴安县| 策勒县| 满城县| 房山区| 鄢陵县| 福贡县| 兴和县| 通化市| 毕节市| 睢宁县| 缙云县| 大田县| 雷山县| 若羌县| 梁平县| 乐至县| 定安县| 龙陵县| 浦县| 汾阳市| 汶川县| 潢川县| 北海市| 惠州市| 二连浩特市| 定日县| 石楼县| 淳安县| 湟中县| 藁城市| 永济市| 彭泽县| 乐安县| 湖南省| 上栗县| 安岳县| 榆社县| 炉霍县| 德钦县| 黄龙县| 临猗县|