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 页面只自动刷新一次
Jul 10 Javascript
JS实现QQ图片一闪一闪的效果小例子
Jul 31 Javascript
jquery cookie实现的简单换肤功能适合小网站
Aug 25 Javascript
javascript中createElement的两种创建方式
May 14 Javascript
JavaScript知识点总结(四)之逻辑OR运算符详解
May 31 Javascript
JS产生随机数的几个用法详解
Jun 22 Javascript
微信小程序 弹窗自定义实例代码
Mar 08 Javascript
IScroll那些事_当内容不足时下拉刷新的解决方法
Jul 18 Javascript
AjaxUpLoad.js实现文件上传功能
Mar 02 Javascript
js实现表格数据搜索
Aug 09 Javascript
video.js添加自定义组件的方法
Dec 09 Javascript
如何理解Vue前后端数据交互与显示
May 10 Vue.js
深入浅析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生成SessionID和图片校验码的思路和实现代码
2009/03/10 PHP
实现在同一方法中获取当前方法中新赋值的session值解决方法
2014/06/26 PHP
PHP实现的简单三角形、矩形周长面积计算器分享
2014/11/18 PHP
PHP调用.NET的WebService 简单实例
2015/03/27 PHP
Docker 如何布置PHP开发环境
2016/06/21 PHP
基于PHP实现微信小程序客服消息功能
2019/08/12 PHP
php数值计算num类简单操作示例
2020/05/15 PHP
在JS中最常看到切最容易迷惑的语法(转)
2010/10/29 Javascript
jQuery表单验证插件formValidator(改进版)
2012/02/03 Javascript
jQuery中parents()方法用法实例
2015/01/07 Javascript
JavaScript实现更改网页背景与字体颜色的方法
2015/02/02 Javascript
jQuery自定义动画函数实例详解(附demo源码)
2015/12/10 Javascript
Bootstrap组件(一)之菜单
2016/05/11 Javascript
javascript insertAfter()定义与用法示例
2016/07/25 Javascript
轻松掌握JavaScript享元模式
2016/08/27 Javascript
如何利用模板将HTML从JavaScript中抽离
2016/10/08 Javascript
bootstrap为水平排列的表单和内联表单设置可选的图标
2017/02/15 Javascript
jquery仿ps颜色拾取功能
2017/03/08 Javascript
手把手搭建安装基于windows的Vue.js运行环境
2017/06/12 Javascript
JS中的算法与数据结构之常见排序(Sort)算法详解
2019/08/16 Javascript
three.js中多线程的使用及性能测试详解
2021/01/07 Javascript
Python判断变量是否为Json格式的字符串示例
2017/05/03 Python
Python入门_浅谈数据结构的4种基本类型
2017/05/16 Python
python爬虫入门教程--利用requests构建知乎API(三)
2017/05/25 Python
Python坐标轴操作及设置代码实例
2020/06/04 Python
浅谈tensorflow 中的图片读取和裁剪方式
2020/06/30 Python
Pycharm配置autopep8实现流程解析
2020/11/28 Python
css3实现书本翻页效果的示例代码
2021/03/08 HTML / CSS
薇姿法国官网:Vichy法国
2021/01/28 全球购物
采购意向书范本
2014/03/31 职场文书
南京青奥会口号
2014/06/12 职场文书
超市理货员岗位职责
2014/07/04 职场文书
村长反四风问题个人对照检查材料
2014/09/21 职场文书
党支部先进事迹材料
2014/12/24 职场文书
2015毕业生实习期工作总结
2015/04/09 职场文书
学会用Python实现滑雪小游戏,再也不用去北海道啦
2021/05/20 Python