当前位置:  开发笔记 > 编程语言 > 正文

有没有办法在javascript中打印对象的所有方法?

如何解决《有没有办法在javascript中打印对象的所有方法?》经验,为你挑选了2个好方法。

有没有办法在javascript中打印对象的所有方法?



1> troelskn..:

当然:

function getMethods(obj) {
  var result = [];
  for (var id in obj) {
    try {
      if (typeof(obj[id]) == "function") {
        result.push(id + ": " + obj[id].toString());
      }
    } catch (err) {
      result.push(id + ": inaccessible");
    }
  }
  return result;
}

使用它:

alert(getMethods(document).join("\n"));


try/catch是一个很好的方法.IE中有一些属性/方法会在访问时出错.
注意,它不适用于某些内置对象,例如Date:`var a = new Date();。console.log(typeof a,getMethods(a));`返回:`object []`。

2> mrded..:

如果您只想查看对象内部的内容,可以打印所有对象的键.其中一些可以是变量,一些是方法.

该方法不是很准确,但它非常快:

console.log(Object.keys(obj));


为什么Object.keys(new Date());给我一个空数组?
推荐阅读
郑小蒜9299_941611_G
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有