En JS, existe una abreviatura para un objeto vacío que es {} . ¿Hay una abreviatura para una function vacía en JS?
La razón es que, dado que las funciones son objetos de primera clase, las usamos como argumentos con más frecuencia, pero pasar una función vacía es, en el mejor de los casos, feo.
var foo = baz(function(){}); Para declarar una función, en algún momento tenemos que declarar function(){} .
Me gustaría que más API de Node.js requieran que se pase una función (de devolución de llamada), para que la API no parezca engañosamente sincrónica. Quizás un paso en esa dirección sería crear una abreviatura para las funciones de marcador de posición vacías.
No no hay. Con ES6, es posible que pueda usar una función de flecha: ()=>{} que es un poco más corta.
Si realmente necesita esto muy a menudo (¿no debería?), Puede declarar uno usted mismo:
function noop(){} y luego referirse a eso repetidamente. Si no desea saturar su alcance, también puede usar la función Function.prototype (¡sic!) Que no hace nada más que devolver constantemente undefined , pero en realidad es más largo que la expresión de su función.
ES6 uno podría ser:
const noop = () => {};Tenga cuidado si usa Babel ya que compila de manera diferente; en su lugar, puede devolver algo explícitamente:
const noop = () => ({});Vea este tweet sobre por qué las llaves son importantes: https://twitter.com/_ericelliott/status/601420050327711744?lang=en
Si usa lodash, hay un método noop .