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 相关文章推荐
表单提交验证类
Jul 14 Javascript
AJAX的跨域与JSONP(为文章自动添加短址的功能)
Jan 17 Javascript
jquery中的sortable排序之后的保存状态的解决方法
Jan 28 Javascript
javascript中字符串替换函数replace()方法与c# 、vb 替换有一点不同
Jun 25 Javascript
jQuery+jRange实现滑动选取数值范围特效
Mar 14 Javascript
百度坐标(BD09)、国测局坐标(火星坐标,GCJ02)、和WGS84坐标系之间的转换
Feb 19 Javascript
vue组件(全局,局部,动态加载组件)
Sep 02 Javascript
Vue引用Swiper4插件无法重写分页器样式的解决方法
Sep 27 Javascript
Javascript实现一朵从含苞到绽放的玫瑰
Mar 30 Javascript
Vue 2.0 侦听器 watch属性代码详解
Jun 19 Javascript
JavaScript HTML DOM元素 节点操作汇总
Jul 29 Javascript
node.js中对Event Loop事件循环的理解与应用实例分析
Feb 14 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_Flame(Version:Progress)的原代码
2006/10/09 PHP
PHP语法速查表
2006/12/06 PHP
linux下 C语言对 php 扩展
2008/12/14 PHP
基于OpenCV的PHP图像人脸识别技术
2009/10/11 PHP
Ajax+PHP边学边练 之五 图片处理
2009/12/03 PHP
php强制下载类型的实现代码
2011/04/21 PHP
php判断变量类型常用方法
2012/04/24 PHP
php实现Linux服务器木马排查及加固功能
2014/12/29 PHP
PHP基于递归实现的约瑟夫环算法示例
2017/08/27 PHP
PHP htmlspecialchars_decode()函数用法讲解
2019/03/01 PHP
thinkphp5.1框架模板赋值与变量输出示例
2020/05/25 PHP
Hutia 的 JS 代码集
2006/10/24 Javascript
document.all与WEB标准
2020/05/13 Javascript
js 字符串转换成数字的三种方法
2013/03/23 Javascript
JavaScript作用域与作用域链深入解析
2013/12/06 Javascript
jquery实现通用版鼠标经过淡入淡出效果
2014/06/15 Javascript
javascript日期操作详解(脚本之家整理)
2015/09/05 Javascript
基于JavaScript如何实现私有成员的语法特征及私有成员的实现方式
2015/10/28 Javascript
手机移动端实现 jquery和HTML5 Canvas的幸运大奖盘特效
2016/12/06 Javascript
Angular 4.x+Ionic3踩坑之Ionic 3.x界面传值详解
2018/03/13 Javascript
微信小程序实现的日期午别医生排班表功能示例
2019/01/09 Javascript
angular inputNumber指令输入框只能输入数字的实现
2019/12/03 Javascript
基于JavaScript实现简单抽奖功能代码实例
2020/10/20 Javascript
用python写扫雷游戏实例代码分享
2018/05/27 Python
python实现两张图片的像素融合
2019/02/23 Python
Python 通过微信控制实现app定位发送到个人服务器再转发微信服务器接收位置信息
2019/08/05 Python
美国眼镜网站:EyeBuyDirect
2017/04/13 全球购物
Berghaus官网:户外服装和设备,防水服
2020/01/17 全球购物
琳达·法罗眼镜英国官网:Linda Farrow英国
2021/01/19 全球购物
string = null 和string = ''的区别
2013/04/28 面试题
国际贸易个人求职信范文
2014/01/04 职场文书
关于旷工的检讨书
2014/02/02 职场文书
《二泉映月》教学反思
2014/04/15 职场文书
调研座谈会发言材料
2014/08/23 职场文书
如何使用 resize 实现图片切换预览功能
2021/08/23 HTML / CSS
Windows下用Nginx配置https服务器及反向代理的问题
2021/09/25 Servers