typeof、undefined,一个易犯的错误
来源:互联网 发布:android 棋牌游戏源码 编辑:程序博客网 时间:2024/06/06 03:49
先看一段代码,为一个翻页页码框响应事件:
_gotoPage_handler: function(ev){ //若为页码输入框则只响应回车键事 if(typeof(ev.keyCode) != undefined && ev.keyCode != 13) return; //... this.fire('gotoPage',pageNo);}
这段代码本意是当页码输入框敲回车时才响应,否则按其他键则不响应。但是结果确是后面的代码永远得不到执行。
说明:因为翻页按钮和页面输入框的keyDown事件均调用该方法,故需要做事件的keyCode判断,如果keyCode不为空,则是页码输入框触发的事件,否则为翻页按钮触发事件。当页码输入框触发事件时,只有为回车键时才执行下面的程序。
原因是什么呢?原来typeof()函数返回结果是字符串,字符串是不会等于undefined的,多么可恶的一个错误啊!
正确的做法是typeof() 与“undefined”字符串进行比较,见下面的代码:
_gotoPage_handler: function(ev){ //若为页码输入框则只响应回车键事 if(typeof(ev.keyCode) != "undefined" && ev.keyCode != 13) return; //... this.fire('gotoPage',pageNo);}
阅读全文
0 0
- typeof、undefined,一个易犯的错误
- [Silverlight] 一个易犯的错误:关于调用 WCF 服务
- 使用默认构造函数一个易犯的错误
- 关于for循环的一个初学者易犯得错误。
- 犯了一个Hibernate的低级错误
- 一个犯了N久的错误
- Javascript常犯的一个错误
- 犯了一个简单的错误
- 犯了一个Hibernate的低级错误
- 犯了一个Hibernate的低级错误
- 犯了一个严重的错误
- 我用iterator犯的一个错误
- 使用 libevent 容易犯的一个错误
- 犯了一个很搞笑的错误
- 犯了一个极傻的错误
- Coldfusion一个容易犯的错误。
- 一个java继承容易犯的错误
- 指针赋值容易犯的一个错误
- Socket 进行UDP广播数据(GCDAsyncUdpSocket)
- 你的机器人只差双眼睛
- [云路由器] 设置了虚拟服务器,外网无法访问服务器怎么办?
- Android开源库V
- php下pgsql扩展安装
- typeof、undefined,一个易犯的错误
- 远程操作SDR实现
- MyBatis--第三天
- 分页查询,天坑一枚
- cf424div2 A. Unimodal Array
- 23种设计模式之——单例模式
- 玩过狼人杀吗
- IT行业、前端、java入门必备书籍
- usart&spi