我正试图让它发挥作用,但事实并非如此:
var i;
i.test = function() {
alert("hello");
}
i.test();
我希望代码提醒'hello',但Firefox错误控制台会显示:
missing } in XML expression
alert("hello");
---------------^
我该如何解决这个问题......
答案 0 :(得分:4)
您的i
未分配给任何内容,因此它不是对象。事实上,它指的是全局undefined
对象,它恰好在Firefox中是只读的(应该是这样)。你需要:
var i = {}; //init to empty object
然后一切都会好的。
答案 1 :(得分:0)
var i = {};
i.test = function() {
alert("hello");
};
你有两个不同的问题。你没有初始化i
(正如slebetman所说),你错过了一个分号,迫使翻译使用分号替换。
答案 2 :(得分:0)
您无法将函数添加到未定义的值,您需要创建一个实际的对象:
var i = {};
虽然不是必需的,但您应该在语句末尾加一个分号以避免含糊不清:
i.test = function() {
alert("hello");
};