小编naw*_*awK的帖子

一流的公民

维基文章中的一等公民定义说:

一个对象是第一类的

  • 可以存储在变量和数据结构中
  • 可以作为参数传递给子程序
  • 可以作为子例程的结果返回
  • 可以在运行时构建
  • 具有内在身份(独立于任何给定名称)

有人可以解释/详细说明第5项要求(粗体)吗?我觉得这篇文章应该提供更多细节,因为"内在身份"正在捕捉到什么意义.

也许我们可以在我们的讨论中使用Javascript中的函数和C中的函数来说明第5个子弹.

我相信C中的函数是第二类的,而函数在Javascript中是一流的,因为我们可以在Javascript中执行以下操作:

var foo = function () { console.log("Hello world"); };
Run Code Online (Sandbox Code Playgroud)

,在C中是不允许的.

同样,我的问题实际上是在第5个子弹(要求).

first-class

7
推荐指数
1
解决办法
3093
查看次数

Node.js Knex与Sequelize有何相似/不同?

我从IRC频道获得的答案:

Sequelize是一个ORM,其中包含一些查询构建器内容。Knex 只是一个查询生成器,不是ORM。

ORM实际上在许多用例中并不十分合适,很容易遇到它们可以表达的内容的限制,最终需要摆脱困境。

但是,这并不能真正解释它们各自的优缺点。我正在寻找一种解释,可能正在寻找一个简单的示例(用例)来突出那些相似/不同之处。

为什么一个使用另一个?

orm node.js knex.js

5
推荐指数
1
解决办法
2075
查看次数

标签 统计

first-class ×1

knex.js ×1

node.js ×1

orm ×1