Nueva forma de definir, compactamente y de forma funcional, métodos de JavaScript. Siempre deben devolver un valor, no pueden ser métodos sin resultado.
const deepCopy = function(obj) {
return JSON.parse(JSON.stringify(obj));
})
const sum = function(a,b) {
return a + b;
})
const div = function(a,b) {
if (b !== 0) {
return a / b;
} else {
return NaN;
}
})
const sinResultado = function() {
alert('param'); // No devuelve nada, no se podría pasar a arrow function.
}
Cuando hay un único parámetro los paréntesis son opcionales, pero se suelen dejar por legibilidad ya que son obligatorios cuando no hay parámetros o hay más de uno.
const deepCopy = (obj) => JSON.parse(JSON.stringify(obj));
const deepCopy = obj => JSON.parse(JSON.stringify(obj));
const sum = (a,b) => a + b;
const div = (a,b) => {
if (b !== 0) {
return a / b;
} else {
return NaN;
}
}
const div2 = (a,b) => (b !== 0) ? a / b : NaN;