Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 访问JS if/else的多个数组元素_Javascript_Html_Arrays_Json - Fatal编程技术网

Javascript 访问JS if/else的多个数组元素

Javascript 访问JS if/else的多个数组元素,javascript,html,arrays,json,Javascript,Html,Arrays,Json,我有一把小提琴 向我的页面显示我在尝试访问不同级别的阵列时遇到问题 我用简单的三元运算处理这个问题,但我新添加的if/else语句现在没有显示任何内容 如果你看一下小提琴的JS,你会发现我有一个三元运算符的注释部分 // fullContent.innerHTML = ''; // rightContent.innerHTML = ''; // leftContent.innerHTML = ''; // fullContent.innerHTML = currentJSO

我有一把小提琴 向我的页面显示我在尝试访问不同级别的阵列时遇到问题

我用简单的三元运算处理这个问题,但我新添加的if/else语句现在没有显示任何内容

如果你看一下小提琴的JS,你会发现我有一个三元运算符的注释部分

    //   fullContent.innerHTML = '';
//   rightContent.innerHTML = '';
//   leftContent.innerHTML = '';

// fullContent.innerHTML = currentJSONobject.content[i].panel_type_id == 1 ? currentJSONobject.content[i].content : fullContent.innerHTML;

// leftContent.innerHTML = currentJSONobject.content[i].panel_type_id == 2 ? currentJSONobject.content[i].content : leftContent.innerHTML;

// rightContent.innerHTML = currentJSONobject.content[i].panel_type_id == 3 ? currentJSONobject.content[i].content : rightContent.innerHTML;
这里有一把小提琴,它只与三元运算符一起工作

当这些都就位并且我删除了上面if/else的部分时,它会按预期工作。但我需要使用if-else语句来决定将什么内容放入哪个div,这取决于页面和面板类型

我试图将其设置为“如果顶级(page_id)数组的page_type_id为n,则检查该页面的每个内容元素的面板类型。如果为n,则放入该div,如果为x,则放入该div”

这里我真正需要弄清楚的是如何正确地访问它,以便在每次迭代中,我检查页面类型id以便知道要隐藏哪些div,然后检查面板类型id以便知道要将哪些内容放在哪个div中

const-original\u-json=[{
“pageID”:“93”,
“页面类型\ id”:“2”,
“显示id”:“2”,
“幻灯片顺序”:空,
“持续时间”:“74”,
“背景图片”:“images\/bg\u rainbow.svg”,
“面板id”:“86”,
“面板类型id”:“2”,
“cont_id”:“138”,
“contID”:“138”,
“内容”:“\r\n\r\n\r\n\r\n\r\n左93\r\n\r\n”
},
{
“pageID”:“93”,
“页面类型\ id”:“2”,
“显示id”:“2”,
“幻灯片顺序”:空,
“持续时间”:“74”,
“背景图片”:“images\/bg\u rainbow.svg”,
“面板id”:“87”,
“面板类型id”:“3”,
“cont_id”:“139”,
“contID”:“139”,
“内容”:“\r\n\r\n\r\n\r\n\r\n右93\r\n\r\n”
},
{
“pageID”:“94”,
“页面类型\ id”:“1”,
“显示id”:“2”,
“幻灯片顺序”:空,
“持续时间”:“74”,
“背景图片”:“images\/bg\u rainbow.svg”,
“面板id”:“87”,
“面板类型id”:“1”,
“cont_id”:“139”,
“contID”:“139”,
“内容”:“\r\n\r\n\r\n\r\n\r\n整页\r\n\r\n”
},
{
“pageID”:“95”,
“页面类型\ id”:“1”,
“显示id”:“2”,
“幻灯片顺序”:空,
“持续时间”:“74”,
“背景图片”:“images\/bg\u rainbow.svg”,
“面板id”:“87”,
“面板类型id”:“1”,
“cont_id”:“139”,
“contID”:“139”,
“内容”:“\r\n\r\n\r\n\r\n\r\n第2页\r\n\r\n”
},
{
“pageID”:“96”,
“页面类型\ id”:“1”,
“显示id”:“2”,
“幻灯片顺序”:空,
“持续时间”:“74”,
“背景图片”:“images\/bg\u rainbow.svg”,
“面板id”:“87”,
“面板类型id”:“1”,
“cont_id”:“139”,
“contID”:“139”,
“内容”:“\r\n\r\n\r\n\r\n\r\n第3页\r\n\r\n”
},
];
设计数器=0;
var fullContent=document.getElementById('fullContent');
var leftContent=document.getElementById('leftContent');
var righcontent=document.getElementById('righcontent');
var fullColumn=document.getElementById('fullColumn');
var leftColumn=document.getElementById('leftColumn');
var rightColumn=document.getElementById('rightColumn');
//循环使用原始json
//对于每个项目,获取页面ID并查看是否已经为其创建了新的页面对象
//如果有,将原始json中的对象添加到新页面对象的“内容”数组中
//否则,创建一个新的页面对象以放入新数组中
const pages\u array=original\u json.reduce(函数(pages\u array、item、index、original\u json){
const current_pageID=item.pageID;
const exisiting_page=pages_array.find(page=>page.pageID==当前_pageID);
如果(现有页面===未定义){
常量新页面={
pageID:当前页面ID,
内容:[项目]
}
pages\u array.push(新建页面);
}否则{
现有页面内容推送(项目)
}
返回页面\u数组;
}, []);
//打开控制台查看数据
console.clear();
console.log(pages\u数组)//这将打印正确的数组
setInterval(()=>{//这里我循环浏览页面,但我需要在这里循环内容以呈现html
const currentJSONobject=pages_数组[计数器];
对于(var i=0;ivar fullColumn = document.getElementById('fullColumn');
var leftColumn = document.getElementById('leftColumn');
var rightColumn = document.getElementById('rightColumn');
<div class="col-lg-6 leftColumn">
  <div class="leftContent" id="leftContent" style=" height: 100%; ">
  </div>
</div>