0

当我尝试执行此操作时收到“mydoc.docMeta 未定义”错误:

var mydoc = {};
mydoc.docMeta.keyword = "somevalue";

我究竟做错了什么?

4

4 回答 4

3

因为mydoc.docMeta也是一个对象,所以你必须先定义它:

var mydoc = {};
mydoc.docMeta = {};
mydoc.docMeta.keyword = "somevalue";

或者只使用文字:

var mydoc = {
    docMeta : {
        keyword : "somevalue"
    }
};
于 2013-02-19T14:53:38.933 回答
2

您必须再嵌套一层:

var mydoc = {
   docMeta: {
       keyword: "somevalue"
   }
}
于 2013-02-19T14:53:48.653 回答
1

你想docMeta成为另一个对象文字吗?

var mydoc = { docMeta: {} };
于 2013-02-19T14:53:42.553 回答
1

尝试

var mydoc = {};
mydoc.docMeta = {
    keyword : "somevalue"
};

您将 mydoc 声明为对象,但随后您尝试设置对象属性的属性,首先您必须将该属性也声明为对象

于 2013-02-19T14:55:40.387 回答