`

判断js函数是否存在typeof

    博客分类:
  • JS
 
阅读更多

//*==============================================================================*/
//*   Ajax加载                                                                                                                                                             */
//* 语法:var objLoad=new AjaxLoad()                                                                                                                */
//*       objLoad.Loading(doAction,dataNode[,dataType[,callback[,fullShow]]]);                                               */
//*                                                                                                                                                                              */
//* 参 数:                                                                                                                                                                 */
//*      -doAction[必需的]  执行 URL                                                                                                                        */
//*      -dataNode[必需的]  显示获取内容的容器 ID                                                                                              */
//*      -dataType[可选的]  数据类别[text|xml|body],缺省值 text                                                                         */ 
//*      -callback[可选的]  输出函数[函数对 像]                                                                                                       */
//*      -fullShow[可选的]  显示模式: 缺省值false-单块模式,true-全屏模式                                                         */
//*                                                                                                                                                                              */
//*                                                                                                                                                                              */
//* 输出函数 [callback]:                                                                                                                                         */
//*      可自定义输出函数来格式化所获取的数据,其格式请参加页尾objPrint()函数                                    */
//*                                                                                                                                                                              */
//*==============================================================================*/  
/*此处调用Charset.vbs来解决当dataType='body'时,xmlHttp.responseBody产生的乱码问题                        */
/*请保证Charset.vbs文件与本文件存放在同一路径当中                                                                                    */
var charsetPath=document.getElementsByTagName("script")[document.getElementsByTagName("script").length-1].src.split("?")[0];
charsetPath=charsetPath.replace("Ajax_Load.js","Charset.vbs");
document.write("<script type=\"text/vbscript\" src=\""+charsetPath+"\"></scr"+"ipt>");
//*==============================================================================*/ 
//*                           AjaxLoad begin                                                                                                                         */
//*==============================================================================*/  
function AjaxLoad(){
    /*初始化Ajax                                             */
 function InitAjax(){
  var Ajax=false;
  /*Microsoft*/
  try {
     Ajax = new ActiveXObject("Msxml2.XMLHTTP");
  } catch (e) {
     try {
     Ajax = new ActiveXObject("Microsoft.XMLHTTP");
     } catch (E) {
     Ajax = false;
     }
  }/*Mozilla*/
  if (!Ajax && typeof Ajax!='undefined') {
     Ajax = new XMLHttpRequest();
  }
   return Ajax;
 }
 /*---------------------------------------------------------------------------*/    
 /*   判断函数或对像是否存在  一定要添加try catch块,否则不起作用             */
 /*---------------------------------------------------------------------------*/    
 function objExists(objName){
  try{ 
   if(typeof eval(objName)=="undefined"){return false;}
   if(typeof eval(objName)=="object"){return true;}
  }catch(e){
   return false;
  }
 }
 function funExists(funName){
  try{ 
   if(typeof eval(funName)=="undefined"){return false;} 
   if(typeof eval(funName)=="function"){return true;}
  }catch(e){
   return false;
  }
 } 
 /*-----------------------------------------------------------------------*/ 
 var fullShow=false;
 var doAction="";
 var dataType="text";
 var callback=null;
 var dataNode=null;
    var objAjax = new InitAjax();
 this.Loading=function(_doAction,_dataNode,_dataType,_callback,_fullShow){
  try{
   doAction=_doAction;
   dataType=_dataType;
   callback=_callback;
   dataNode=document.getElementById(_dataNode); 
   /**/
   if(!dataNode){alert("参数错误,请输入正确的ID");return false;}
   if(!_fullShow){fullShow=false;}else{fullShow=true; }
   objAjax.open("GET",doAction, true);
   objAjax.onreadystatechange = function(){handleStateChange();};   
   objAjax.setRequestHeader("Accept-charset","gb2312");
   objAjax.setRequestHeader("If-Modified-Since","0");  //禁止缓存
   objAjax.send(null); 
  }catch(e){
  }
 } 
 function handleStateChange(){
  if (objAjax.readyState == 4 && objAjax.status == 200) {
   try{
       var data=getData(dataType,objAjax);
        if(objExists(callback)){
        data=eval(callback+"("+data+");");
    }
    dataNode.innerHTML = data;
   }catch(e){
      alert(e)
   }
  }else{
   var outString="";
   if(!fullShow){
    /*Loading, please wait……|在此处设置显示样式*/
    outString+="<div style='color: #FF0000;font-size: 10pt;'>正在加载,请稍候……</div>";
    dataNode.innerHTML = outString;
   }else{
    outString+="<!-- load start -->";
    outString+="<div id='load' style='position:absolute;z-index:10;top:expression(body.clientHeight/2-60);left:expression(body.clientWidth/2-110); height:120px;width:220px;margin-right: auto;margin-left: auto;text-align: center;color: #FF0000;font-size: 10pt;padding: 5px;line-height: 20px;background-color: #FFFFFF;border-top-width: 1px;border-right-width: 2px;border-bottom-width: 2px;border-left-width: 1px;border-top-style: inset;border-right-style: outset; border-bottom-style: outset;border-left-style: inset;border-top-color: #ECE9D8; border-right-color: #ECE9D8;border-bottom-color: #ECE9D8;border-left-color: #ECE9D8;'>";
    outString+="  <div id='loadLogo' style='margin-top: 30px;margin-right: auto;margin-bottom: 20px;margin-left: auto;'><img src='Images/Wait.gif' width='32' height='32' /></div>";
    outString+="  <div id='loadTitle' style=''>Loading, please wait……</div> ";
    outString+="</div>";
    outString+="<div id='loadMask' style='position:absolute;z-index:1; top:0;left:0; width:expression(body.clientWidth); height:expression(body.clientHeight);background:#999999;filter:Alpha(opacity=60);'></div>";
    outString+="<!-- load end  -->";
    dataNode.innerHTML = outString;    
   }
  }
 }
 function getData(dataType,xmlHttp){
     if(dataType=="xml"){
    return xmlHttp.responseXML;
  }else if(dataType=="body"){
    /*Bytes2Bstr在Charset.vbs中*/
    return Bytes2Bstr(xmlHttp.responseBody);   
  }else if(dataType=="stream"){
    return xmlHttp.responseStream;   
  }else{
    return xmlHttp.responseText;   
  }
 }
 /*-----------------------------------------------------------------------*/ 
}
/*===========================================================================*/
/*                                AjaxLoad end                               */ 
/*===========================================================================*/

/*Charset.vbs文件内容:

'编码处理函数:解决XMLHTTP返回的中文乱码处理

Function Bytes2Bstr(bodyStr)
 strReturn = ""
 For i = 1 To LenB(bodyStr)
  ThisCharCode = AscB(MidB(bodyStr,i,1))
  If ThisCharCode < &H80 Then
     strReturn = strReturn & Chr(ThisCharCode)
  Else
     NextCharCode = AscB(MidB(bodyStr,i+1,1))
     strReturn = strReturn & Chr(CLng(ThisCharCode) * &H100 + CInt(NextCharCode))
     i = i + 1
  End If
 Next
 Bytes2Bstr = strReturn
End Function

*/

/*---------------------------------------------------------------------------*/ 

/*             输出函数格式如下                                                        */
/*---------------------------------------------------------------------------*/ 
function objPrint(){
  /*在此处格式化数据后,再返回格式化了的数据*/
  //alert("执行了格式化哟")
  return data;
}

 

 

判断父页面函数是否存在

if(typeof(opener.showLicenceList)=='object'){

 

}

分享到:
评论

相关推荐

    Javascript 判断是否存在函数的方法

    在JavaScript编程语言中,判断一个变量是否为函数是常见的需求,特别是在执行动态加载或有条件调用函数时。这里我们探讨的是一种使用`try...catch`语句来检测函数是否存在并安全执行的方法。以下是对给定代码的详细...

    JavaScript中判断函数、变量是否存在

    以下是在JavaScript中判断函数和变量是否存在的方法及相关知识点: 一、判断函数是否存在 1. 使用typeof结合eval()函数 一个简单的方法是使用typeof运算符结合eval()函数。typeof运算符可以用来获取变量或函数的...

    javascript常用判断函数

    此外,JavaScript还有其他很多内置的判断函数,如`isNaN`、`typeof`等,它们分别用于检测一个值是否为非数字和确定变量的类型。 在编写JavaScript代码时,正确使用这些判断函数能提高代码的健壮性和可维护性。理解...

    JS 使用 typeof 获取数据类型

    这篇博客“JS 使用 typeof 获取数据类型”深入探讨了如何利用`typeof`来识别和处理不同类型的JavaScript数据。 首先,`typeof`返回的是一个字符串,这个字符串描述了变量的类型。它适用于原始数据类型(如`...

    js 判断js函数、变量是否存在的简单示例代码

    总结来说,在JavaScript中判断函数或变量是否存在,是通过检查其数据类型来实现的。在实际开发中,我们应该使用更安全、更高效的方法来完成这一任务。同时,需要考虑到代码的可维护性,避免使用`eval`函数,尽量采用...

    js中判断变量类型函数typeof的用法总结.docx

    ### JavaScript中的`typeof`运算符详解 #### 一、引言 在JavaScript中,了解变量的类型对于编写高质量代码至关重要。`typeof`运算符作为基本工具之一,可以帮助开发者快速识别变量的数据类型。本文将深入探讨`...

    JS简单判断函数是否存在的方法

    在JavaScript中,理解和掌握如何判断函数是否存在是至关重要的,因为这有助于编写健壮的代码,特别是在处理用户输入或动态加载的函数时。同时,理解不同类型检查的方法也有助于提高编程效率和代码质量。最后,要注意...

    js中判断变量类型函数typeof的用法总结

    在JavaScript中,typeof是一个非常重要的运算符,它能够用来判断一个变量或表达式的数据类型。typeof运算符执行类型检测,并返回一个表示数据类型的字符串。可能返回的字符串值包括:"number"、"string"、"boolean...

    js typeof 函数使用初探索

    可以直接使用VS打开直接运行,查看效果 1、typeof - 返回值有六种可能:"number," "string," "boolean," "object," "function," 和 ...2、所以,typeof函数不仅可以判断某一个变量的类型,还是可以判断一个变量是否存在

    JS/jQuery判断DOM节点是否存在的简单方法

    JavaScript原生函数没有提供判断DOM节点是否存在方法,我们通常获取DOM节点几乎都是document.getElement..方法,会返回一个object数组合集,我们可以通过object[0],object[1]这样来访问这个合集的每一个对象。既然...

    instanceof 判断引用类型,typeof判断基本类型。

    在JavaScript编程语言中,`instanceof` 和 `typeof` 是两个非常重要的操作符,用于判断变量的类型。它们各自有着不同的用途和用法,对于理解和调试代码至关重要。 首先,我们来详细了解一下`instanceof`操作符。`...

    JS:typeof instanceof constructor prototype区别

    在JavaScript(JS)编程语言中,确定变量或对象的类型是一项基本且重要的任务。这不仅有助于理解代码的行为,还能在调试、数据验证以及实现特定功能时提供帮助。本文将深入探讨四种常用的方法来识别和判断JavaScript...

    使用typeof判断function是否存在于上下文

    总的来说,使用`typeof`操作符判断函数是否存在上下文是JavaScript开发中的一个实用技巧,它有助于提高代码的健壮性和可维护性。在编写涉及函数调用的代码时,确保对函数存在性的检查是必要的,尤其是在涉及到异步...

    判断非空函数和使用实例

    在IT领域,尤其是在软件开发与编程中,“判断非空函数”是一个重要的概念,它涉及到对变量或对象状态的检查,确保其不为空或未被初始化。这种检查是防止程序运行时错误的关键步骤,特别是在处理数据库操作、用户输入...

    js判断undefined变量类型使用typeof

    在JavaScript中,判断一个变量是否为undefined类型是一个基础而又重要的操作。对于初学者来说,能够准确地识别变量的类型是非常关键的,而typeof操作符正是用于这一目的。typeof是一个一元操作符,用于检测变量或...

    javascript常用函数 javascript 常用库

    - `instanceof`: 检查对象是否属于某个构造函数的实例。 二、JavaScript常用库 1. jQuery:这是一个广泛使用的JavaScript库,简化了DOM操作、事件处理、动画和Ajax交互。例如,`$(selector).click(function() {})...

    JS类型检测库弥补typeof的问题

    `typeof`操作符是JavaScript内置的用于检测变量类型的工具,但它在处理某些特定情况时存在局限性。本文将深入探讨`typeof`的问题以及如何通过使用JS类型检测库来弥补这些不足。 `typeof`操作符在JavaScript中可以...

Global site tag (gtag.js) - Google Analytics