Las funciones de JavaScript son funciones de primera clase, lo que significa que las funciones y los objetos se tratan como la misma cosa. Las funciones se pueden almacenar como una variable dentro de un objeto o una matriz, así como también se pueden pasar como un argumento o ser devueltas por otra función. Eso hace que la función "ciudadanos de primera clase en JavaScript"
JavaScript usa sintaxis de notación literal, lo que hace que sea difícil comprender por completo el hecho de que las funciones de JavaScript son objetos.
Por ejemplo ..
var youObj1 = new Object();
// or
var youObj1 = {};
ambos declerations son equivalentes. Al usar new
estamos llamando a la función constructora de un Objeto. También mediante el uso de {}
(atajo de JavaScript llamado literales) estamos llamando a la función de construcción de un Objeto. {}
es solo una representación más corta para crear instancias del constructor.
La mayoría de los lenguajes usa new
palabra clave para crear un objeto, así que permite crear un objeto JavaScript.
var myFunction = new Function("a", "b", 'return a_b');
Como se puede ver que creó un nombre de objeto función.
Creando la misma función de nombre de objeto usando la expresión de función de JavaScript.
var myFunction = function myFunction(a,b) {
return a+b;
}
Aquí vamos acabamos de crear una función de nombre de objeto.
posible duplicado de [¿Qué es una programación de primera clase construir?] (Http://stackoverflow.com/questions/646794/what-is-a-first-class- programación-construcción) –