在谷歌和帖子没有任何帮助后,这是我的猜测:
var MC = {};
MC.o_p = function ( type ) {
return {
model : type,
result : 'continue',
page : {},
args : {},
server : {},
hash : localStorage.hash
}
};
我称之为
var obj1 = MC.o_p( 'MUserTry' );
这里对象o_p是“作用域”到MC。您可以通过上面的调用创建多个实例。字符串MUserTry作为变量类型传入,并设置为对象属性模型。
这会有用吗?我暂时从试验和错误中休息一下,但我需要的是能够创建具有多个实例的特定表单的对象文字。
相关
How to create global, instance based objects from local scope?
答案 0 :(得分:1)
您无法确定结果对象的范围。 o_p
属性是对象的成员,但该函数返回的对象不是。
对象文字只是用于创建对象的{ ... }
语法,因此您要做的是创建一个对象,而不是对象文字。 (通过将对象文字的代码放在字符串中并执行字符串来创建对象文字。)
您滥用构造函数,但它会起作用。将创建一个对象,并且将调用该函数对其进行初始化,然后该对象将被丢弃并由函数返回的对象替换。
只需删除new
关键字,即可进行常规函数调用,并返回该对象。