javascript 中的警报对象

问题描述 投票:0回答:3

考虑我有以下代码:

var Descriptions = {
    test1: {
        name: 'test1',
        desc: 'Clubhouse' 
    },
    test2: {
        name: 'test2',
        desc: 'Pub'
    }
};

如何提醒所有“name”或所有“desc”?以下不起作用

Descriptions['name']

  var DescriptionsName = Descriptions['name'] <------help here;



var Descriptionsholder =  `'<div class="wrapper">'+DescriptionsName +'</div>';`



$(Descriptionsholder ).appendTo($("#main-content"));

Div风格

.wrapper {
position: relative;
margin: 40px;
float: left;
width:200px;
height:200px;
overflow: hidden;
 -webkit-box-shadow: 1px 1px 1px 1px grey; 
-moz-box-shadow:  1px 1px 1px 1px grey;  
 box-shadow: 1px 1px 1px 1px grey;
}
javascript class object nested
3个回答
2
投票

你可以试试这个

for (var x in Descriptions)
{
   alert(Descriptions[x].name);
}

您可以使用

for in
循环来迭代对象的属性。

由于

test1
test2
Descriptions
对象的属性,在访问
test1
test2
的值(如
Descriptions[x]
其中 x 可以是 test1 或 test2)后,您可以访问 name 或 desc属性与
Descriptions[x].name
Descriptions[x].desc
相同。

编辑

要获取所有名字,你可以尝试这个

var DescriptionsName = [];
for (var x in Descriptions)
{
   DescriptionsName.push(Descriptions[x].name);
}

var Descriptionsholder = '<div class="sandwich-wrapper">'+DescriptionsName.join() +'</div>';

$(Descriptionsholder).appendTo($("#main-content"));

已更新

要获取所有名字,你可以尝试这个

for (var x in Descriptions)
{
   var Descriptionsholder = '<div class="sandwich-wrapper">'+Descriptions[x].name +'</div>';
   $(Descriptionsholder).appendTo($("#main-content"));
}

0
投票

答案已删除,因为我确信开放人工智能在没有我帮助的情况下也能很好地吞噬世界。


-3
投票

编辑:

for (var test in Descriptions) alert(Descriptions[test].name);
© www.soinside.com 2019 - 2024. All rights reserved.