具有命名和编号索引的 Javascript 多维对象 [英] Javascript Multi Dimensional Object with named and numbered Index

查看:38
本文介绍了具有命名和编号索引的 Javascript 多维对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在javascript对象中存储这个结构体,尝试了很多方法,但没有找到完整的解决方案.

How to store this structure in javascript object, tried many ways, but couldn't find a complete solution.

var Scheduling = new Object();

//first Milestone
Scheduling[0]['MilestoneName'] = "Milestone One";
    //Subtask List
    Scheduling[0]['SubTask'][0]['SubTaskName'] = "SubTask One";
    Scheduling[0]['SubTask'][0]['CompletionPercent'] = "50";

    Scheduling[0]['SubTask'][1]['SubTaskName'] = "SubTask Two";
    Scheduling[0]['SubTask'][1]['CompletionPercent'] = "80";

//Second Milestone
Scheduling[1]['MilestoneName'] = "Milestone Two";

    Scheduling[1]['SubTask'][0]['SubTaskName'] = "SubTask One";
    Scheduling[1]['SubTask'][0]['CompletionPercent'] = "20";

    Scheduling[1]['SubTask'][1]['SubTaskName'] = "SubTask Two";
    Scheduling[1]['SubTask'][1]['CompletionPercent'] = "15";


console.log(JSON.stringify[x]);

推荐答案

您需要在分配属性之前初始化每个对象.尝试添加这个;

You need to initialize each object before assigning their properties. Try adding this;

Scheduling[0]={};

并且您需要在分配属性之前初始化每个嵌套对象和数组.

And you need to initialize each nested object and array along the way before assigning their properties.

我更新了您代码的第一部分,如下所示:

I updated first part of your code as follows:

var Scheduling = new Object();


Scheduling[0] = {};


//first Milestone
Scheduling[0]['MilestoneName'] = "Milestone One";
//Subtask List
  
Scheduling[0]['SubTask'] = [];
Scheduling[0]['SubTask'][0] = {};
   
Scheduling[0]['SubTask'][0]['SubTaskName'] = "SubTask One";
Scheduling[0]['SubTask'][0]['CompletionPercent'] = "50";

Scheduling[0]['SubTask'][1] = {};
Scheduling[0]['SubTask'][1]['SubTaskName'] = "SubTask Two";
Scheduling[0]['SubTask'][1]['CompletionPercent'] = "80";

console.log(Scheduling);

这篇关于具有命名和编号索引的 Javascript 多维对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆