Una de las principales características añadidas en esta versión fue la inclusion de async
y await
, entre otras mas.
Nos permite devolver la clave y los valores de una matriz
const data = {
frontend: 'Pablo',
backend: 'David',
desing: 'Dayana'
}
const entries = Object.entries(data);
console.log(entries);
//Salida>
//[ [ 'frontend', 'Pablo' ],
// [ 'backend', 'David' ],
// [ 'desing', 'Dayana' ] ]
Nos devuelve los valores de una matriz en un arreglo
const data = {
frontend: 'Pablo',
backend: 'David',
desing: 'Dayana'
}
const values = Object.values(data);
console.log(values);
// salida>
// [ 'Pablo', 'David', 'Dayana' ]
Añade elementos a un string
const string = "hello";
console.log(string.padStart(7,'hi'));
console.log(string.padEnd(8 ,'hi'));
// Salida>
// hihello
// hellohih
Existe una sintaxis especial para trabajar con promesas de una forma más confortable, llamada async/await
. Es sorprendentemente fácil de entender y usar.
No permite ser mas claros al construir este tipo de funciones y trabajar de mejor manera con el asincronismo.
const helloWorld = () => {
return new Promise ((resolve, reject) => {
(true)
? setTimeout(() => resolve('Hello World'), 3000)
: reject(new Error('Test'))
})
};
const helloAsync = async () => {
const hello = await helloWorld();
console.log(hello);
}
helloAsync();
La forma correcta del uso de async/await
es con el uso de try/catch
const anotherFunction = async () => {
try{
const hello = await helloWorld();
console.log(hello);
} catch(error) {
console.log(error)
}
}