<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        對newfunctionName()定義一個函數的理解_基礎知識

        來源:懂視網 責編:小采 時間:2020-11-27 21:23:30
        文檔

        對newfunctionName()定義一個函數的理解_基礎知識

        對newfunctionName()定義一個函數的理解_基礎知識:比如定義一個函數的兩種調用方法: 代碼如下: function getInfo() { var info = { message: message }; return info; } 1、var info1 = getInfo(); 2、var info2 = new getInfo(); 1和2有什么區別嗎?info1和inf
        推薦度:
        導讀對newfunctionName()定義一個函數的理解_基礎知識:比如定義一個函數的兩種調用方法: 代碼如下: function getInfo() { var info = { message: message }; return info; } 1、var info1 = getInfo(); 2、var info2 = new getInfo(); 1和2有什么區別嗎?info1和inf

        比如定義一個函數的兩種調用方法:
        代碼如下:
        function getInfo() {
        var info = {
        message: "message"
        };
        return info;
        }

        1、var info1 = getInfo();

        2、var info2 = new getInfo();

        1和2有什么區別嗎?info1和info2得到的值是一樣的嗎?

        第1種很簡單,用的也很多,就是執行一個函數,并接受函數的返回值并賦給info1對象;

        第2種情況一般就很少見了。首先,函數也是一種對象,是對象肯定就可以實例化(實例化其實就是調用對象的構造函數對對象進行初始化),所有第2種情況就是調用getInfo函數對象的構造函數,并接收構造函數初始化的實例(一般都是this),而函數有個比較特別的地方就是,如果構造函數有顯示返回值,將用該返回值替換this對象返回。所以第2中情況new getInfo就是調用構造函數(函數的構造函數就是其定義本身)并接收返回值info。

        應用:

        1、比如HTML定義了DOM對象:,js代碼如下:
        代碼如下:
        function $(domId) {
        var dom = document.getElementById(domId);
        return dom;
        }

        window.onload = function() {
        var dom1 = new $("domId");
        var dom2 = $("domId");
        alert(dom1 == dom2);
        }

        則alert提示信息將顯示true。之所以使用$做函數名,是因為 使用這個函數的時候是不是有點像jQuery的風格呢?其實jQuery的構造函數里就應用了這種風格的函數定義,不管你是用new還是直接調用函數,返回的值都是一樣的。

        2、定義兼容的XMLHttpRequest對象(本例摘自Javascript權威指南的第18.1節)
        大家都知道不同的瀏覽器對異步通信支持的方式可能不一樣,早期的IE是用的ActiveX的方式,下面的代碼定義了一個兼容的XMLHttpRequest對象:
        代碼如下:
        if (window.XMLHttpRequest === undefined) {
        window.XMLHttpRequest = function() {
        try {
        //如果可用,則使用ActiveX對象最新的版本
        return new ActiveXObject("Msxml2.XMLHTTP.6.0");
        } catch (ex1) {
        try {
        return new ActiveXObject("Msxml2.XMLHTTP.3.0");
        } catch (ex2) {
        throw new Error("XMLHttpRequest is not supported")
        }
        }
        }
        }

        這樣,就可以直接通過 var xhr = new XMLHttpRequest()定義了,而不用管是IE瀏覽器還是火狐瀏覽器。

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        對newfunctionName()定義一個函數的理解_基礎知識

        對newfunctionName()定義一個函數的理解_基礎知識:比如定義一個函數的兩種調用方法: 代碼如下: function getInfo() { var info = { message: message }; return info; } 1、var info1 = getInfo(); 2、var info2 = new getInfo(); 1和2有什么區別嗎?info1和inf
        推薦度:
        標簽: 方法 定義 函數
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 亚洲第一永久在线观看| 亚洲a一级免费视频| 亚洲精品国产高清在线观看| 一二三四视频在线观看中文版免费| 亚洲另类图片另类电影| 成人无码区免费A片视频WWW| 亚洲一区二区三区播放在线| 三年片在线观看免费观看高清电影| 久久综合久久综合亚洲| 日本高清免费网站| 一级做a爰片性色毛片免费网站| 区三区激情福利综合中文字幕在线一区亚洲视频1| 亚洲精品无AMM毛片| 亚洲人成影院在线观看| 国内永久免费crm系统z在线 | 免费很黄无遮挡的视频毛片| 亚洲人成网站在线观看青青| 在线观看免费视频一区| 亚洲视频2020| 在线a毛片免费视频观看| 无遮挡免费一区二区三区 | 亚洲性线免费观看视频成熟| 亚洲国产区男人本色在线观看| 日本免费一区尤物| 国产成人自产拍免费视频| 亚洲视频网站在线观看| 好男人视频社区精品免费| 72pao国产成视频永久免费| 久久亚洲精品国产精品| 黑人粗长大战亚洲女2021国产精品成人免费视频 | 亚洲日韩图片专区第1页| 搡女人真爽免费视频大全| 人成午夜免费大片在线观看| 777亚洲精品乱码久久久久久| 成人免费视频一区| 中文字幕永久免费视频| 精品国产日韩久久亚洲| 亚洲中文字幕在线观看| 成人毛片18女人毛片免费| 成人影片一区免费观看| 亚洲国产欧美日韩精品一区二区三区 |