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 相关文章推荐
关于document.cookie的使用javascript
Apr 11 Javascript
Span元素的width属性无效果原因及解决方案
Jan 15 Javascript
30个让人兴奋的视差滚动(Parallax Scrolling)效果网站
Mar 04 Javascript
JavaScript实现快速排序(自已编写)
Dec 19 Javascript
js检验密码强度(低中高)附图
Jun 05 Javascript
javascript从image转换为base64位编码的String
Jul 29 Javascript
用window.onerror捕获并上报Js错误的方法
Jan 27 Javascript
详解AngularJS中$http缓存以及处理多个$http请求的方法
Feb 06 Javascript
Backbone.js框架中Model与Collection的使用实例
May 07 Javascript
JavaScript实现获取用户单击body中所有A标签内容的方法
Jun 05 Javascript
十大 Node.js 的 Web 框架(快速提升工作效率)
Jun 30 Javascript
Vue的路由动态重定向和导航守卫实例
Mar 17 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
Syphon 虹吸式咖啡壶冲煮–拨动法
2021/03/03 冲泡冲煮
基于mysql的bbs设计(四)
2006/10/09 PHP
php中关于普通表单多文件上传的处理方法
2011/03/25 PHP
PHP正则表达式 /i, /is, /s, /isU等介绍
2014/10/23 PHP
PHP的pcntl多进程用法实例
2015/03/19 PHP
PHP+MySql+jQuery实现的&quot;顶&quot;和&quot;踩&quot;投票功能
2016/05/21 PHP
js批量设置样式的三种方法不推荐使用with
2013/02/25 Javascript
javascript 弹出的窗口返回值给父窗口具体实现
2013/11/23 Javascript
javascript实现检验的各种规则
2015/07/31 Javascript
基于jQuery实现仿百度首页换肤背景图片切换代码
2015/08/25 Javascript
分享几种比较简单实用的JavaScript tabel切换
2015/12/31 Javascript
JavaScript每天必学之事件
2016/09/18 Javascript
基于jQuery实现中英文切换导航条效果
2016/09/18 Javascript
JS实现表单验证功能(验证手机号是否存在,验证码倒计时)
2016/10/11 Javascript
前端面试知识点锦集(JavaScript篇)
2016/12/28 Javascript
原生js实现倒计时功能(多种格式调用)
2017/01/12 Javascript
JSON对象转化为字符串详解
2017/08/11 Javascript
用vue构建多页面应用的示例代码
2017/09/20 Javascript
javascript获取图片的top N主色值方法详解
2018/01/26 Javascript
JS实现的RC4加密算法示例
2018/08/16 Javascript
Vue移动端实现图片上传及超过1M压缩上传
2019/12/23 Javascript
[02:12]探秘2016国际邀请赛中国区预选赛选手房间
2016/06/25 DOTA
使用FastCGI部署Python的Django应用的教程
2015/07/22 Python
Python IDE PyCharm的基本快捷键和配置简介
2015/11/04 Python
详解TensorFlow在windows上安装与简单示例
2018/03/05 Python
爬虫代理池Python3WebSpider源代码测试过程解析
2019/12/20 Python
Python使用urllib模块对URL网址中的中文编码与解码实例详解
2020/02/18 Python
基于FME使用Python过程图解
2020/05/13 Python
python 实时调取摄像头的示例代码
2020/11/25 Python
普通院校学生的自荐信
2013/11/27 职场文书
员工薪酬福利制度
2014/01/17 职场文书
《夸父追日》教学反思
2014/02/26 职场文书
交通事故协议书
2014/04/15 职场文书
家长对学生的评语
2014/04/18 职场文书
我爱我的祖国演讲稿
2014/05/04 职场文书
Java实现HTML转为Word的示例代码
2022/06/28 Java/Android