Javascript 显示数组的整个键/值
我正在尝试打印以下数组:Javascript 显示数组的整个键/值,javascript,jquery,html,arrays,Javascript,Jquery,Html,Arrays,我正在尝试打印以下数组: 第一种是单个数组 以下是存储在列表中的两个数组 var ideaGeneration_online_stagea = { title: "Entrepreneurial Behaviour", outcome: "Open University, free course about entrepreneurship, it's nature and functions and to help you establish a business idea
- 第一种是单个数组
- 以下是存储在列表中的两个数组
var ideaGeneration_online_stagea = { title: "Entrepreneurial Behaviour", outcome: "Open University, free course about entrepreneurship, it's nature and functions and to help you establish a business idea.", cost: "", duration: "", link: "http://www.open.edu/openlearn/money-management/management/business-studies/entrepreneurial-behaviour/content-section-0" } var ideaGeneration_online_stageb = [ { title: "The serial entrepreneur's guide to startup ideas", outcome: "", cost: 10.00 , duration: 6, link: "https://www.udemy.com/the-step-by-step-guide-to-creating-100mm-startup-ideas/" }, { title: "21 critical lessons for entrepreneurs", outcome: "", cost: "", duration: 2, link: "https://www.udemy.com/21-golden-rules-for-entrepreneurs/" } ]; alert(ideaGeneration_online_stagea); alert(ideaGeneration_online_stageb);
[object object]
用于第一个,而[object object],[object object]
用于第二个,因此我显然没有正确显示它们。使用console.log(ideagenovation\u online\u stagea)
而不是警报,并检查(chrome)开发人员工具>控制台选项卡使用以下代码
alert(JSON.stringify(ideaGeneration_online_stagea));
alert(JSON.stringify(ideaGeneration_online_stageb ));
使用它并让我知道它是否有效@user3907211如果您的json只有一个对象,那么您可以直接调用它的属性 例如 否则,请使用forEach的
如果不确定数组的大小,请使用长度检查器
以你为例
if(ideaGeneration_online_stagea.length>0) {
ideaGeneration_online_stagea.forEach(function(item) {
alert(item.title);
});
} else {
alert(ideaGeneration_online_stagea.title);
}
按照你对大家的讨论
您希望根据诸如键标题之类的内容来提醒json
这里展示了多种方式
alert(JSON.stringify(ideaGeneration_online_stagea));
alert(JSON.stringify(ideaGeneration_online_stageb ));
它将以字符串形式返回所有json
var temp=[ideagenovation\u online\u stagea,ideagenovation\u online\u stageb];
$。每个(温度、功能(i、val){
if(val.length){
对于(i=0;i因此,根据您的评论,我假设您希望将所有标题值组合在一个字符串中,并显示在页面中。如果是这样,请遵循以下说明
添加用于显示输出的HTML标记
<div id="output"></div>
添加以下javascript代码
var outputString="";
if(ideaGeneration_online_stagea.length>0) {
ideaGeneration_online_stagea.forEach(function(item) {
outputString = outputString + item.title +"<br>";
});
} else {
outputString = ideaGeneration_online_stagea.title;
}
document.getElementById("output").innerHTML=outputString;
var outputString=”“;
如果(IdeAgenation\u online\u stagea.length>0){
IdeAgenation\u online\u stagea.forEach(功能(项目){
outputString=outputString+item.title+“
”;
});
}否则{
outputString=ideAgenation\u online\u stagea.title;
}
document.getElementById(“output”).innerHTML=outputString;
谢谢,但我想在屏幕上向用户显示它,而不是使用console.log。但这是一个@user3907211:您不想使用警报向用户显示一些json内容;除了开发人员之外,没有人知道他们在看什么。警报将丢失格式/缩进等,并且限制在特定的文本长度。这是个坏主意™ 写在上面。最好使用模式对话框并正确设置格式。@user3907211:因为您必须获取所有值并将它们设置为字符串或任何html格式,然后您可以在警报或模式视图中显示它们,等等。将其设置为json并递归打印为字符串,然后将该字符串放入警报,但我符合RobllThank的要求。如果我打开了,该怎么办我试图检索价值,因为使用stringify显示的内容类似于{“title”:“创业行为”,“结果”:"打开Univ,在那里我只希望显示每个数组键的值,而不显示qoation标记或卷曲braces@user3907211如果您的json只有一个对象,那么您可以直接调用其属性,例如ideagenization\u online\u stagea.title
,否则,如果您不确定使用的数组大小,请使用forEach
示例的长度检查器if(ideagenization_online_stagea.length>0){ideagenization_online_stagea.forEach(function(item){alert(item.title);}}else{alert(ideagenization_online_stagea.title)}
谢谢您的两条小评论。它用引号(例如“title”)打印出来,如何删除引号。我的第二个小问题是,如何打印出IdeAgenation\u online\u stageb中列表中存储的数组列表的所有标题
<div id="output"></div>
var outputString="";
if(ideaGeneration_online_stagea.length>0) {
ideaGeneration_online_stagea.forEach(function(item) {
outputString = outputString + item.title +"<br>";
});
} else {
outputString = ideaGeneration_online_stagea.title;
}
document.getElementById("output").innerHTML=outputString;