首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何打印出对象的所有属性

如何打印出对象的所有属性
EN

Stack Overflow用户
提问于 2015-05-15 03:57:46
回答 1查看 438关注 0票数 2

我使用的是D3,当我在节点上悬停时,我希望出现一个文本框,并将所有的节点属性写入其中。我制作了一个文本框,并使im能够将我知道的属性写到文本框中:

代码语言:javascript
运行
AI代码解释
复制
function onHover(){
    d3.selectAll("#nodeAttributes")
            .text(function() { return (d.type); }) //random attribute i know            
            ;
}

这在节点上的'mouseover‘上被调用。但是,如果我不知道节点有哪些属性呢?如何循环遍历所有属性并将所有属性写入文本框。我的数据看起来与此类似:

代码语言:javascript
运行
AI代码解释
复制
nodes: [
        {
          "type": "o",
          "name": "fred",
          "age": "16",
          "class": "maths",
.
.
.
.

        },

我希望输出的文本看起来像:

代码语言:javascript
运行
AI代码解释
复制
type: o
name: fred
age: 16
class: maths

我不确定如何循环遍历所选节点(d)的每个属性

提前感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-15 04:03:42

可以使用以下代码在对象中迭代:

代码语言:javascript
运行
AI代码解释
复制
function onHover() {
  d3.selectAll('#nodeAttributes').html(function (d) {
    var str = '';
    for (var key in d) {
      str += key + ': ' + d[key] + '<br/>'
    }
    return str;
  }
  );
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30258969

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文