我正在尝试创建一个包含对象的对象,因此可以将其视为字典:

var dictionaries = {};
dictionaries.english_to_french =
{
 {english:"hello",french:"bonjour"},
 {english:"i want",french:"je veux"},
 {english:"bla",french:"le bla"}
};

但是它给出了错误Uncaught SyntaxError: Unexpected token {我究竟做错了什么?

谢谢 !

编辑

对不起,我没有明确说明我想做什么。
编辑了上面的代码。

最佳答案

您正在尝试为您的对象赋予一个属性,而该属性将是单个对象:

dictionaries.english_to_french =
  {english:"hello",french:"bonjour"}
;

您不需要额外的{ }。您可以立即声明整个内容:
var dictionaries = {
  english_to_french: {
    english: "hello", french: "bonjour"
  }
};

我建议您使用一种更好的字典格式:
var dictionaries = {
  english_to_french: {
    "hello": "bonjour",
    "chicken": "poulet", // ? something like that
    "Englishman": "rosbif"
  }
};

这样一来,您无需搜索即可直接查找单词。然后可以从中创建反向字典:
dictionaries.french_to_english = function(dict) {
  var rv = {};
  for (var eword in dict)
    rv[dict[eword]] = eword;
  return rv;
}(dictionaries.english_to_french);

09-19 08:57