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


Posted in Javascript onJune 10, 2015

一、是否存在指定函数

function isExitsFunction(funcName) {
  try {
    if (typeof(eval(funcName)) == "function") {
      return true;
    }
  } catch(e) {}
  return false;
}

二、类似PHP常用的判断函数是否存在,不存在则创建

if (typeof String.prototype.endsWith != 'function') {
 String.prototype.endsWith = function(suffix) {
  return this.indexOf(suffix, this.length - suffix.length) !== -1;
 };
}

三、判断js函数是否存在,如果存在则执行

假设funcName为函数名字,用如下方法就可以达到目标

一定要添加try catch块,否则不起作用。

try 
{ 
 if(typeof(eval(funcName))=="function") 
 {
   funcName();
 }
}catch(e)
{
//alert("not function"); 
}

四、是否存在指定变量

function isExitsVariable(variableName) {
  try {
    if (typeof(variableName) == "undefined") {
      //alert("value is undefined"); 
      return false;
    } else {
      //alert("value is true"); 
      return true;
    }
  } catch(e) {}
  return false;
}

一般情况下,我们单独判断变量是否存在都是用

if("undefined" != typeof downlm){ 
if(downlm=="soft"){ 
document.write('成功'); 
} 
}

这样就不会因为直接使用变量导致出错了,适用于页面改版,旧页面没有变量赋值的情况。

Javascript 相关文章推荐
JQuery textlimit 显示用户输入的字符数 限制用户输入的字符数
May 14 Javascript
理解Javascript_14_函数形式参数与arguments
Oct 20 Javascript
JQuery获取样式中的background-color颜色值的问题
Aug 20 Javascript
jQuery插件datalist实现很好看的input下拉列表
Jul 14 Javascript
利用jquery实现验证输入的是否是数字、小数,包含保留几位小数
Dec 07 Javascript
Vue渲染函数详解
Sep 15 Javascript
vue实现双向绑定和依赖收集遇到的坑
Nov 29 Javascript
three.js实现炫酷的全景3D重力感应
Dec 30 Javascript
微信小程序实现的日期午别医生排班表功能示例
Jan 09 Javascript
JavaScript实现单点登录的示例
Sep 23 Javascript
Javascript文本框脚本实现方法解析
Oct 30 Javascript
uniapp电商小程序实现订单30分钟倒计时
Nov 01 Javascript
Javascript中实现String.startsWith和endsWith方法
Jun 10 #Javascript
Javascript中判断对象是否为空
Jun 10 #Javascript
javascript事件委托的方式绑定详解
Jun 10 #Javascript
个人总结的一些JavaScript技巧、实用函数、简洁方法、编程细节
Jun 10 #Javascript
浅析JavaScript动画
Jun 10 #Javascript
JavaScript操作XML文件之XML读取方法
Jun 09 #Javascript
JavaScript检查数字是否为整数或浮点数的方法
Jun 09 #Javascript
You might like
了解咖啡雨林联盟认证 什么是雨林认证 雨林认证是什么意思
2021/03/05 新手入门
php中Smarty模板初体验
2011/08/08 PHP
destoon首页调用求购供应信息的地区名称的方法
2014/08/21 PHP
解析WordPress中控制用户登陆和判断用户登陆的PHP函数
2016/03/01 PHP
php实现三级级联下拉框
2016/04/17 PHP
PHP实现判断数组是一维、二维或几维的方法
2017/02/06 PHP
Laravel框架自定义验证过程实例分析
2019/02/01 PHP
js模拟点击事件实现代码
2012/11/06 Javascript
JQuery 图片的展开和伸缩实例讲解
2013/04/18 Javascript
jquery 获取标签名(tagName)示例代码
2013/07/11 Javascript
原生js和jquery中有关透明度设置的相关问题
2014/01/08 Javascript
jquery 删除字符串最后一个字符的方法解析
2014/02/11 Javascript
javascript实现点击按钮让DIV层弹性移动的方法
2015/02/24 Javascript
JS中获取函数调用链所有参数的方法
2015/05/07 Javascript
详解JavaScript ES6中的Generator
2015/07/28 Javascript
JavaScript中数组继承的简单示例
2015/07/29 Javascript
浅谈javascript的Touch事件
2015/09/27 Javascript
每日十条JavaScript经验技巧(二)
2016/06/23 Javascript
概述如何实现一个简单的浏览器端js模块加载器
2016/12/07 Javascript
谈谈对vue响应式数据更新的误解
2017/08/01 Javascript
Vue-router结合transition实现app前进后退动画切换效果的实例
2017/10/11 Javascript
python从入门到精通(DAY 3)
2015/12/20 Python
python常见排序算法基础教程
2017/04/13 Python
Python基于ThreadingTCPServer创建多线程代理的方法示例
2018/01/11 Python
对python中的argv和argc使用详解
2018/12/15 Python
python实现密度聚类(模板代码+sklearn代码)
2020/04/27 Python
如何在scrapy中集成selenium爬取网页的方法
2020/11/18 Python
英国手工布艺沙发在线购买:Sofas & Stuff
2018/03/02 全球购物
Skyscanner台湾:全球知名的旅行比价引擎
2018/07/01 全球购物
实习生求职自荐信
2014/02/07 职场文书
白酒市场营销方案
2014/02/25 职场文书
离职证明标准格式
2014/09/15 职场文书
2014年内勤工作总结
2014/11/24 职场文书
亲戚关系证明
2015/06/24 职场文书
创业计划书之家教中心
2019/09/25 职场文书
Spring Boot 的创建和运行示例代码详解
2022/07/23 Java/Android