如何使用以下语法将数组添加为属性

How can I add a array as a property with the following syntax?

本文关键字:数组 添加 属性 语法 何使用      更新时间:2023-09-26
var Items = {
    FormVariables: function()
    {
        if (this.array === 'undefined')
        {
           this.array = [];
        }
        return this.array;
    }
};

这是我的尝试,我得到了一个未定义的错误。我甚至可以在项目范围内的变量,就像我正在尝试。如果是,语法是什么样的?

我只是问这是否可以使用var variableName = {}语法完成。

编辑:

访问它
    var formVars = new Array();
    formVars.push('[');
    for (var item in gd["FormVariables"])
    {
        formVars.push('"' + item + '":"' + gd["FormVariables"][item] + '"');
    }
    formVars.push(']');

这里的真正目标是将所有这些项转换为键/值对的JSON数组

是的,您可以使用[][]new Array的快捷方式,正如{}new Object的快捷方式。

this.array = [];

顺便说一下,没有"编译器错误",因为JavaScript不是编译语言,而是解释语言。

同样,你的检查也没有多大意义。您可能需要:

if (typeof this.array === 'undefined')

因为typeof返回一个字符串。检查字符串'undefined'与检查'real' undefined不同。对于字符串,它必须被显式地设置为这些字符,这几乎是不可能的。