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 相关文章推荐
浅谈JavaScript中面向对象技术的模拟
Sep 25 Javascript
一行命令搞定node.js 版本升级
Jul 20 Javascript
jquery控制背景音乐开关与自动播放提示音的方法
Feb 06 Javascript
JS实现的文字与图片定时切换效果代码
Oct 06 Javascript
关于获取DIV内部内容报错的原因分析及解决办法
Jan 29 Javascript
Javascript获取图片原始宽度和高度的方法详解
Sep 20 Javascript
移动开发之自适应手机屏幕宽度
Nov 23 Javascript
Vue生命周期示例详解
Apr 12 Javascript
React组件生命周期详解
Jul 03 Javascript
JavaScript设计模式之代理模式简单实例教程
Jul 03 Javascript
解决IOS端微信H5页面软键盘弹起后页面下方留白的问题
Jun 05 Javascript
pageGroup.js实现分页功能
Jul 27 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
php中常用编辑器推荐
2007/01/02 PHP
在PHP中使用模板的方法
2008/05/24 PHP
用sql命令修改数据表中的一个字段为非空(not null)的语句
2010/06/04 PHP
PHP 强制下载文件代码
2010/10/24 PHP
PHP写UltraEdit插件脚本实现方法
2011/12/26 PHP
全面解析PHP操作Memcache基本函数
2016/07/14 PHP
关于PHP中字符串与多进制转换函数的实例代码
2016/11/03 PHP
如何用PHP做到页面注册审核
2017/03/02 PHP
thinkPHP实现的联动菜单功能详解
2017/05/05 PHP
从javascript语言本身谈项目实战
2006/12/27 Javascript
动态加载js、css等文件跨iframe实现
2014/02/24 Javascript
提高NodeJS中SSL服务的性能
2014/07/15 NodeJs
js和jquery设置disabled属性为true使按钮失效
2014/08/07 Javascript
Javascript this 关键字 详解
2014/10/22 Javascript
JS点击链接后慢慢展开隐藏着图片的方法
2015/02/17 Javascript
jquery+CSS实现的多级竖向展开树形TRee菜单效果
2015/08/24 Javascript
百度地图给map添加右键菜单(判断是否为marker)
2016/03/04 Javascript
jQuery使用正则验证15/18身份证的方法示例
2017/04/27 jQuery
layui弹出层效果实现代码
2017/05/19 Javascript
小程序红包雨的实现示例
2019/02/19 Javascript
webpack4实现不同的导出类型
2019/04/09 Javascript
详解Vue中组件的缓存
2019/04/20 Javascript
python 实现对文件夹内的文件排序编号
2018/04/12 Python
python3.6.3+opencv3.3.0实现动态人脸捕获
2018/05/25 Python
Python实现的网页截图功能【PyQt4与selenium组件】
2018/07/12 Python
Python实现的插入排序,冒泡排序,快速排序,选择排序算法示例
2019/05/04 Python
阿里云ECS服务器部署django的方法
2019/08/29 Python
Python如何使用OS模块调用cmd
2020/02/27 Python
利用python控制Autocad:pyautocad方式
2020/06/01 Python
pycharm远程连接服务器并配置python interpreter的方法
2020/12/23 Python
网络安全方面的面试题
2015/11/04 面试题
如果有两个类A,B,怎么样才能使A在发生一个事件的时候通知B
2016/03/12 面试题
秋游活动策划方案
2014/02/16 职场文书
搞笑的获奖感言
2014/08/16 职场文书
公司员工辞职信范文
2015/05/12 职场文书
CSS 实现角标效果的完整代码
2022/06/28 HTML / CSS