您的位置:首页 > Web前端 > JavaScript

JS学习笔记——function方法(对象)的鉴别

2013-01-18 12:49 295 查看
  基本方法:

  function temp(){};
  typeof temp == "function"

  存在问题:

  1、在FireFox中,Html元素对象,也会返回function;

  2、在IE中,在Iframe使用中也会出问题;

  3、在Safari中,DOM中的NodeList类型也会被识别为function;

  兼容方法:

  function isFunction(fn) {
    return Object.prototype.toString.call(fn) === "[object Function]";
  }

  为避免某些对象可能有自己的toStirng函数,所以调用Object.prototype的toString函数,该方法可以解决上面的3个兼容问题,但该方法也只是相对完美,它也存在一些缺陷,例如,在IE中,DOM元素的方法返回“Object”,例如someNode.getAttribute()方法。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: