代码改变世界

JavaScript学习笔记之应用技巧二

2010-02-25 22:40  爱研究源码的javaer  阅读(208)  评论(0编辑  收藏  举报
  1. 为IE添加console.log函数
    在Firefox下并有Firebug的支持下,我们经常使用console.log来在控制台记录一些信息。
    但是这种做法在IE下会阻止JavaScript的执行(在Firefox下没有启用Firebug情况下也是一样),因为此时根本没有console对象存在。
    我们可以通过如下小技巧来防止这样情况的发生:

    1 if (typeof(console) === 'undefined') {
    2     window.console = {
    3         log: function(msg) {
    4             alert(msg);
    5         }
    6     };
    7 }
    8 console.log('debug info.');


  2. undefined是JavaScript中保留关键字么?
    看起来像是的,但实际上undefined并不是JavaScript中的关键字:
    1 var undefined = 'Hello';   
    2 undefined; // 'Hello'
    这段代码可能会让你感到很奇怪,不过它的确能够正常运行,undefined只是JavaScript中一个预定义的变量而已。
    注:在JavaScript程序中,千万不要这样做,这个技巧只是告诉你有这么一回事而已。


    1. 判断一个变量是否为undefined
      两种情况下,一个变量为undefined:
      1. 声明了变量,但是没有赋值
    2. 1 var name;   
    3. 2 name === undefined; // true
    4. 2. 从来没有声明过此变量
    5. 1 name2 === undefined; // error – name2 is not defined
    6. 在第二种情况下,会有一个错误被抛出,那么如果判断一个变量是否为undefined而不产生错误呢?
      下面提供了一种通用的方法:
    1. 1
    1. typeof(name2) === ‘undefined’; // true

  • 转自:http://www.cnblogs.com/sanshi/archive/2009/08/30/1556677.html