js typeof function


if (that == null || "undefined" == typeof that) {
return;
}

 

        var bcd;  //未定義   undefined
        function Check_data_type(obj) {
            if ("undefined" == typeof obj) {
                return 0;
            }
        }
        var ts = Check_data_type(1);  //未定義  undefined

 

      var bcd;  //未定義   undefined
        bcd = bcd || {}; //當bcd為未定義時,直接賦值為對象
        bcd.abcd = bcd.abcd || {}; // 當bcd為未定義時候 報錯;
        var abc=null;
        //abc = abc || {}; //abc 為null 把abc 賦值為對象
        abc = abc || ""; //為 null 把abc的 賦值為空字符串

 嚴格模式下 

   "use strict";  //嚴格模式下
 var  tt =  typeof win_handle_data;
win_handle_data = "function" == typeof win_handle_data || new Function(); //開啟嚴格模式 這句話會報錯

 嚴格模式下

  "use strict";
 var  tt =  typeof win_handle_data;
 //不加 var 
 //win_handle_data =  function (){}; // 報錯! win_handle_data is not defined
// win_handle_data = new function (){};// 報錯! win_handle_data is not defined
// win_handle_data =  function test(){}; // 報錯! win_handle_data is not defined
 //win_handle_data = new Function();// 報錯! win_handle_data is not defined

//加 var
//var win_handle_data =  function (){}; // ok     //ƒ win_handle_data()
//var win_handle_data = new function (){};// ok   是一個對象
//var win_handle_data =  function test(){}; // ok   //ƒ test()
//var win_handle_data = new Function();// ok     //ƒ anonymous( )


 "function" == typeof win_handle_data && console.log(1111);  //判斷 win_handle_data 是否是函數,如果是 就執行, 
 //"function" == typeof win_handle_data && r = win_handle_data(r);  //判斷 win_handle_data 是否是函數,如果是 就執行, 
 var t = "function" == typeof win_handle_data;

//不加 var
//win_handle_data = false ||console.log(00); //開啟嚴格模式 這句話會報錯  在嚴格模式下不允許使用八進制文本
//win_handle_data = false || function(){};  // 報錯! win_handle_data is not defined
//win_handle_data = (false || function(){});  // 加括號 報錯! win_handle_data is not defined
//win_handle_data = false || new Function(); //報錯! win_handle_data is not defined

//加 var
 var  win_handle_data = false || function(){}; /// ok 

 

//加 var
var  win_handle_data = false || function(data){console.log(data) }; /// ok 
var  win_handle_data = "function" == typeof win_handle_data || new Function(); //開啟嚴格模式 win_handle_data  會被賦值為  true 和false
win_handle_data("123"); //執行這個函數

//解決

var  win_handle_data = false || function(data){console.log(data) }; /// ok 
 "function" == typeof win_handle_data &&win_handle_data("123");  //判斷 win_handle_data 是否是函數,如果是 就執行, 

 

      "function" == typeof win_handle_data && (r = win_handle_data(r));  //右側賦值 要加括號

 

     先檢測 是否是函數, "function" == typeof callback && callback();


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM