gpt4 book ai didi

javascript - 为什么不使用这个参数?

转载 作者:搜寻专家 更新时间:2023-11-01 04:16:52 25 4
gpt4 key购买 nike

在 Backbone 1.1.2 中,第 279 行

// Return a copy of the model's `attributes` object.
toJSON: function(options) {
return _.clone(this.attributes);
},

options 显然没有被使用,所以为什么要把它放在那里。这只是浪费内存。

我在这里错过了什么?

此处的每条评论是调用此代码的一种方式 - 那么为什么在不使用时传递选项?

toJSON: function(options) {
return this.map(function(model){ return model.toJSON(options); });
},

最佳答案

它不会浪费内存,因为参数无论如何都必须作为 arguments[0] 可用(任何一个选项都是函数调用并且 vm 必须这样做以产生副作用,或者它只是一个对象,所以它只是一个引用)。

它还可以作为父类(super class)可以实现的文档引用。由于 JS 将原型(prototype)用于其面向对象,因此如果您在其中一个父类(super class)中创建一个 toJSON 函数,它将被使用。

关于javascript - 为什么不使用这个参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24336194/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com