维基百科关于一等公民的文章指出,“一些作者”认为,只有当语言支持在运行时创建函数时,函数才是该语言中的一等公民。詹姆斯·科格兰撰写的文章明确称函数是一等公民——无论他是否意识到有关一等公民标准的争议,我不知道。
以下是我的问题:
1. 使用“在运行时创建”这个额外标准,JavaScript程序是一等公民吗?
值得一提的是,基于更广泛的标准(适用于其他对象),JavaScript函数很明显是一等公民,即它们可以作为变量传递;因此,我觉得上述标准增加了一个有趣的动态或至少是一个澄清动态,而不像某个用户所写的那样“武断”。
以下是我的问题:
1. 使用“在运行时创建”这个额外标准,JavaScript程序是一等公民吗?
值得一提的是,基于更广泛的标准(适用于其他对象),JavaScript函数很明显是一等公民,即它们可以作为变量传递;因此,我觉得上述标准增加了一个有趣的动态或至少是一个澄清动态,而不像某个用户所写的那样“武断”。
- 如果是这样,JavaScript中运行时创建函数的过程是什么样子的(我们称之为promises、callbacks、anonymous等)?
- 如果不是,那么在其他语言中运行时创建函数的过程是什么样子的?