Javascript 为什么不可能在二维数组中保存对象?

Javascript 为什么不可能在二维数组中保存对象?,javascript,Javascript,我想在javascript中有一个二维变量,在一维中我想保存对象,在第二维中保存字符串 考虑以下代码: var certificate = [Certificate Object , "Certificate Issuer name as string"]; 但是上面的代码不起作用!有什么需要考虑的吗?看起来您想要的是哈希映射而不是2D数组。 在这种情况下,如果“Certificate Isser name as string”对于每个证书对象都是唯一的,那么您的代码将非常简单: var ce

我想在javascript中有一个二维变量,在一维中我想保存对象,在第二维中保存字符串

考虑以下代码:

var certificate = [Certificate Object , "Certificate Issuer name as string"];

但是上面的代码不起作用!有什么需要考虑的吗?

看起来您想要的是哈希映射而不是2D数组。 在这种情况下,如果“Certificate Isser name as string”对于每个证书对象都是唯一的,那么您的代码将非常简单:

var certificate = {};    
certificate["Certificate Isser name as string"] = Certificate Object;
否则,二维阵列将按如下方式完成:

var certificate = [];
certificate.push([Certificate Object , "Certificate Isser name as string"]);
console.log(certificate[0][1]); // prints: "Certificate Isser name as string"

看起来您想要的是hashmap而不是2D数组。 在这种情况下,如果“Certificate Isser name as string”对于每个证书对象都是唯一的,那么您的代码将非常简单:

var certificate = {};    
certificate["Certificate Isser name as string"] = Certificate Object;
否则,二维阵列将按如下方式完成:

var certificate = [];
certificate.push([Certificate Object , "Certificate Isser name as string"]);
console.log(certificate[0][1]); // prints: "Certificate Isser name as string"

一切都是javascript中的对象。 你想要实现的是非常有可能的,但是以不同的方式

您可以创建一个对象(正如@gdoron所指出的)。您可以尝试将字符串作为键,将对象作为值

var certificate = {
           "Certificate Isser name as string":Certificate Object
};

我希望这能解决这个问题

一切都是javascript中的对象。 你想要实现的是非常有可能的,但是以不同的方式

您可以创建一个对象(正如@gdoron所指出的)。您可以尝试将字符串作为键,将对象作为值

var certificate = {
           "Certificate Isser name as string":Certificate Object
};

我希望这能解决问题

你应该使用对象,而不是数组,不管怎样,它不是二维数组。什么不起作用?控制台日志(证书)的输出是什么?你应该使用对象,而不是数组,不管怎样,它不是二维数组。什么不起作用?控制台日志(证书)的输出是什么