nodejs node await async javascript node.js chaining floating-action-button

javascript - nodejs - node js async await



JavaScript FAB framework en Node.js (2)

Es JavaScript simple, es un patrón de encadenamiento de funciones .

La primera línea, ( fab = require("fab") ) incluye la función fab y le devuelve una referencia.

Todos los paréntesis subsiguientes son llamadas de función, cada invocación de función devuelve probablemente la misma función una y otra vez.

El patrón probablemente se parece a este ejemplo simplificado:

var foo = function (arg) { // detect what the argument is if (typeof arg == ''function'') { // do something with arg console.log(''function: ''+arg()); } else if (arg instanceof RegExp) { // arg is a RegExp... console.log(''A RegExp: ''+arg); } else if (typeof arg == "string") { // arg is a string console.log(''A string: ''+arg); } return foo; // return a reference to itself }; (foo) (function() { return "Foo "; }) (/bar/) (" baz!");

Salidas:

function: Foo A RegExp: /bar/ A string: baz!

He visto una diapositiva que presenta Fab , un framework node.js.

¿Es este JavaScript?

¿Podría alguien explicar lo que está pasando en ese código?

Estoy todo perdido.


Eso es difícil de seguir; Realmente no parece Javascript en absoluto ...

De todos modos, FAB aprovecha el retorno de un puntero a la función que fue llamada. Por ejemplo:

function doSomething(str){ alert(str); return arguments.callee; } // Alerts ''hi'' and then ''there'' doSomething(''hi'')(''there'');

Por supuesto, puede implementar condiciones adicionales, como contar el número de argumentos o verificar el tipo de argumentos pasados. Por ejemplo:

function doSomething(){ if(arguments.length == 1){ alert(arguments[0]) } else if(arguments.length == 2){ alert(arguments[0] + arguments[1]); } return arguments.callee; } doSomething ("Hi, 3 + 4 is:") (3, 4);

El último ejemplo alerta:

> Hi, 3 + 4 is: > 7