javascript针对不确定函数的执行方法


Posted in Javascript onDecember 16, 2015

本文实例分析了javascript针对不确定函数的执行方法。分享给大家供大家参考,具体如下:

在javascript中,有时候只知道一个函数的名字,但并不确定该函数有没有,如何判断该函数是否存在,并执行呢。一个方法是用eval() 执行拼接的程序字符串,但可能带来性能问题。另一个方法是使用符号属性的方式来访问函数,因为函数都是window对象的属性。

利用window[函数名] 来代表该function对象,用window[函数名]()来执行或调用该函数。

例子:

<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> 
<title>新建网页 1</title> 
</head> 
<body> 
<script language="javascript"> 
function input1_onChange(){ 
  alert('input1_onChage executed.'); 
} 
var objId = 'input1'; 
if(window[objId +'_onChange']){ 
  alert('There is the funtion'); 
}else{ 
  alert('There is not the funtion'); 
} 
if(window[objId+'_onChange']  
  && typeof(window[objId+'_onChange'])=='function'){ 
  window[objId+'_onChange'](); 
} 
var fun = window[objId+'_onChange']; 
if(fun && typeof(fun)=='function'){ 
  fun(); 
} 
</script> 
</body> 
</html>

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
js两行代码按指定格式输出日期时间
Oct 21 Javascript
JS显示表格内指定行html代码的方法
Mar 31 Javascript
Javascript常用小技巧汇总
Jun 24 Javascript
JavaScript知识点总结(五)之Javascript中两个等于号(==)和三个等于号(===)的区别
May 31 Javascript
AngularJS入门教程之表格实例详解
Jul 27 Javascript
jQuery实现的右下角广告窗体跟随效果示例
Sep 16 Javascript
VueJS全面解析
Nov 10 Javascript
Angular获取手机验证码实现移动端登录注册功能
May 17 Javascript
详解Vue 非父子组件通信方法(非Vuex)
May 24 Javascript
JS实现可切换图片的幻灯切换效果示例
May 24 Javascript
微信小程序 SOTER 生物认证DEMO 指纹识别功能
Dec 13 Javascript
javascript前端实现多视频上传
Dec 13 Javascript
深入浅析JavaScript字符串操作方法 slice、substr、substring及其IE兼容性
Dec 16 #Javascript
js如何判断输入字符串长度
Dec 16 #Javascript
常常会用到的截取字符串substr()、substring()、slice()方法详解
Dec 16 #Javascript
jQuery添加和删除指定标签的方法
Dec 16 #Javascript
详解JavaScript基于面向对象之继承实例
Dec 16 #Javascript
javascript实现拖放效果
Dec 16 #Javascript
js判断手机访问或者PC的几个例子(常用于手机跳转)
Dec 15 #Javascript
You might like
android上传图片到PHP的过程详解
2015/08/03 PHP
thinkPHP导出csv文件及用表格输出excel的方法
2015/12/30 PHP
PHP中的print_r 与 var_dump 输出数组
2016/06/13 PHP
PHP两个n位的二进制整数相加问题的解决
2018/08/26 PHP
php使用pthreads v3多线程实现抓取新浪新闻信息操作示例
2020/02/21 PHP
jQuery html()等方法介绍
2009/11/18 Javascript
通过js动态操作table(新增,删除相关列信息)
2012/05/23 Javascript
jQuery div层的放大与缩小简单实现代码
2013/03/28 Javascript
javascript实现跳转菜单的具体方法
2013/07/05 Javascript
js如何获取object类型里的键值
2014/02/18 Javascript
jQuery预加载图片常用方法
2015/06/15 Javascript
js实现新年倒计时效果
2015/12/10 Javascript
bootstrap与Jquery UI 按钮样式冲突的解决办法
2016/09/23 Javascript
详解Angular2中Input和Output用法及示例
2017/05/21 Javascript
vue-resource + json-server模拟数据的方法
2017/11/02 Javascript
基于vue配置axios的方法步骤
2017/11/09 Javascript
antd组件Upload实现自己上传的实现示例
2018/12/18 Javascript
js嵌套的数组扁平化:将多维数组变成一维数组以及push()与concat()区别的讲解
2019/01/19 Javascript
el-select数据过多懒加载的解决(loadmore)
2019/05/29 Javascript
python基础教程之实现石头剪刀布游戏示例
2014/02/11 Python
wxpython 最小化到托盘与欢迎图片的实现方法
2014/06/09 Python
Django中模版的子目录与include标签的使用方法
2015/07/16 Python
python生成词云的实现方法(推荐)
2017/06/13 Python
Python使用pyh生成HTML文档的方法示例
2018/03/10 Python
Python实现的将文件每一列写入列表功能示例【测试可用】
2018/03/19 Python
Python安装Flask环境及简单应用示例
2019/05/03 Python
在linux下实现 python 监控usb设备信号
2019/07/03 Python
python文件操作的简单方法总结
2019/11/07 Python
Django认证系统user对象实现过程解析
2020/03/02 Python
详解Python之Scrapy爬虫教程NBA球员数据存放到Mysql数据库
2021/01/24 Python
财务出纳员岗位职责
2013/11/26 职场文书
广告艺术设计专业自荐书
2014/07/08 职场文书
代领报检证委托书范本
2014/10/11 职场文书
捐助感谢信
2015/01/22 职场文书
Python中threading库实现线程锁与释放锁
2021/05/17 Python
Python上下文管理器Content Manager
2021/06/26 Python