答案 0 :(得分:2)
它是用于创建模型对象的构造函数的名称。但是在这种情况下,Backbone代码已经缩小了。
如果您创建基本Model类的实例,它将被记录为:
如果查看Backbone source code,可以找到构造函数定义:
var Model = Backbone.Model = function(attributes, options) {
但是,如果您的代码被压缩,则对象将显示如下:
在您的情况下,您正在使用Backbone的扩展机制来创建一个继承自基本模型的新模型类型。
未压缩,这将显示如下:
同样,我们可以查看Backbone源代码以了解原因:
var extend = function(protoProps, staticProps) {
// ...
child.prototype.constructor = child;
// ...
return child
}
您可以看到,在创建新模型类型时,Chrome无法访问您要用于模型的名称。相反,它会尽力从变量名称中推断出正确的名称。
然后,在压缩之后,您将获得您在控制台中看到的单字符类名称: