数据对象&类

时间:2016-11-17 14:05:33

标签: javascript

您好我只是想知道我需要在整个项目中的许多不同的JavaScript文件上创建多个数据对象变量,这些文件都具有相同的密钥。这些对象将用作我必须使用的包的数据源。例如

var i = new iVar();

我在考虑使用JavaScript类,但我不知道这是否是正确的方法。像

这样的东西
class outputData {
    constructor(){
         this.O0 = 0;
         this.O1 = 0;
         this.O2 = 0;
         this.O3 = 0;
         this.O4 = 0;
         this.O5 = 0;
         this.O6 = 0;
         this.O7 = 0;
         this.O8 = 0;
         this.O9 = 0;
         this.O10 = 0;
         this.O11 = 0;
         this.O12 = 0;
    }
}

所以我创建了一个像这样的类

import '../OutPutDataClass.js';

var openingDeb = new outputData();

然后我将它导入到我想在谎言中使用的文件中。

Uncaught ReferenceError: outputData is not defined(…)

但我得到了

NGNAmountCashBalance,Region
10,One
20,Two
30,Three
40,Four

不确定原因。我希望用数据初始化对象的原因是我可以稍后使用循环来迭代通过对象调用函数来使用键和反应式跟踪器设置正确的值。我不确定这是否是正确的方法,但我还在学习,如果有人可以教育我这将是伟大的。我已经对JavaScript类做了一些研究,但是所有的例子都在同一个文件本地创建了类,调用它不是我需要的。

非常感谢

3 个答案:

答案 0 :(得分:0)

问题不在于您的课程定义(据我所知,这很好!) - 了解ES2015 import syntax的工作原理。没有全球范围'可以这么说 - 如果你想导出/导入某些东西,你必须明确它,如下:

文件1:

export default class OutputData {
    constructor(){
        ...
    }
}

文件2:

import OutputData from '../OutPutDataClass.js';

var openingDeb = new OutputData();

答案 1 :(得分:0)

您需要从文件中导出该类以在其他地方使用它。

您的OutPutDataClass.js档案

export default class outputData {
    constructor(){
         this.O0 = 0;
         this.O1 = 0;
         this.O2 = 0;
         this.O3 = 0;
         this.O4 = 0;
         this.O5 = 0;
         this.O6 = 0;
         this.O7 = 0;
         this.O8 = 0;
         this.O9 = 0;
         this.O10 = 0;
         this.O11 = 0;
         this.O12 = 0;
    }
}

您要在其中使用outputData类的文件:

import OutputData from '../OutPutDataClass.js';

var openingDeb = new OutputData();

答案 2 :(得分:0)

为什么没有将Object作为返回值的函数? 像

function giveMeMyObject() {
    return {V1: "value1", V2: "value2",... };
}