Quelles sont les nouveautés d'ECMAScript 14 ?
Tags: webdev, javascript, beginners, french
Published: 2023-11-04 08:57:15

Les normes **ECMAScript** (ES) sont des règles pour le langage JavaScript. Elles évoluent avec des nouvelles versions, comme ES6 ou ES2015, qui ajoutent de chouettes fonctionnalités pour améliorer les fonctionnalités de JavaScript. La bonne nouvelle, c'est que le vieux code continue de marcher avec les nouvelles versions.

Mais attention, tous les navigateurs et environnements JavaScript ne peuvent pas tout de suite comprendre les nouveautés. Parfois, on utilise un outil pour transformer le code récent en un code utilisable partout.

Ces règles sont gérées par une organisation, Ecma International, et les développeurs peuvent aider à décider des nouvelles règles. C'est important de suivre ces règles pour écrire du bon code JavaScript et rester à la page avec les dernières astuces de programmation. 😎

Voilà sans plus attendre les nouveautés présentes dans d'**ECMAScript 14** , autrement appelé **ECMAScript 2023** .

## `Array.prototype.toSorted()` 

Cette méthode crée un nouveau tableau trié à partir du tableau existant, contrairement à sort(), qui modifie le tableau existant.

```javascript
const numbers = [10, 5, 2, 7, 3, 9, 1, 6, 4];
const sortedNumbers = numbers.toSorted((a, b) => b - a);
console.log(sortedNumbers); // [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
```

## `Array.prototype.toReversed()`

Cette méthode est similaire à `reverse()` mais elle crée un nouveau tableau au lieu de modifier le tableau existant.

```javascript
const colors = ["red", "orange", "yellow", "green", "blue", "purple"];
const reversedColors = colors.toReversed();
console.log(reversedColors); // ['purple', 'blue', 'green', 'yellow', 'orange', 'red']
```

## `Array.prototype.with()`

Cette méthode permet de remplacer un élément d'un tableau à un index donné et renvoie un nouveau tableau.

```javascript
const arr = ["I", "am", "the", "Walrus"];
const newArr = arr.with(3, "Ape Man");
console.log(newArr); // ["I", "am", "the", "Ape Man"]
```

## `Array.prototype.findLast()`

Cette méthode renvoie la dernière instance d'un élément correspondant dans un tableau.

```javascript
const numbers = [54, 34, 55, 75, 98, 77];
const lastEven = numbers.findLast((element) => element % 2 === 0);
console.log(lastEven); // 98
```

## `Array.prototype.findLastIndex()`

Cette méthode renvoie l'index de la dernière occurrence d'un élément correspondant dans un tableau.

```javascript
const numbers = [54, 34, 55, 75, 98, 77];
const lastIndex = numbers.findLastIndex((element) => element % 2 === 0);
console.log(lastIndex); // 4
```

## `Array.prototype.toSpliced()`

Cette méthode crée un nouveau tableau en utilisant la méthode `splice()` pour effectuer des modifications, sans modifier le tableau original.

```javascript
const arr = ["red", "orange", "yellow", "green", "blue", "purple"];
const newArr = arr.toSpliced(2, 1, "pink", "cyan");
console.log(newArr); // ["red", "orange", "pink", "cyan", "green", "blue", "purple"]
```

## Support Shebang ( `(#!/) ` )

Le **shebang** est maintenant officiellement pris en charge pour exécuter des scripts JavaScript directement à l'aide de commandes telles que `./script.js`.

```javascript
#!/usr/bin/env node
console.log("Hello, world!");
```

---

Il y a beaucoup de nouveautés pour manipuler des tableaux. As-tu déjà eu l'occasion de tester ces nouvelles fonctionnalités ?

Merci d'avoir lu cet article jusqu'au bout! Je t'invite à me laisser ton avis en commentaire, ou à me suivre sur [Twitter](https://twitter.com/claire_dochez) pour plus d'astuces JavaScript! 🚀👩‍💻👍