Cette page liste les fonctionnalités de JavaScript qui sont dépréciées (deprecated) (c'est-à-dire que ces fonctionnalités sont toujours disponibles mais qu'il est prévu de les retirer) et les fonctionnalités obsolètes (celles qui ne sont plus utilisables).
Fonctionnalités dépréciées
Ces fonctionnalités dépréciées peuvent toujours être utilisées mais avec une grande attention car elles pourront être supprimées complètements à l'avenir. En règle général, il faut les retirer du code qui les utilise.
Propriétés de RegExp
Les propriétés suivantes sont dépréciées. Cela n'affecte pas le comportement de replace lorsqu'on utilise une chaîne de caractères en paramètre de remplacement :
| Propriété | Description |
|---|---|
$1-$9 |
Les sous-chaînes correspondantes s'il y en a. |
$_ |
Voir input. |
$* |
Voir multiline. |
$& |
Voir lastMatch. |
$& |
Voir lastParen. |
$` |
Voir leftContext. |
$' |
Voir rightContext. |
input |
La chaîne par rapport à laquelle on recherche une correspondance grâce à l'expression rationnelle. |
lastMatch |
Les derniers caractères correspondants. |
lastParen |
La dernière sous-chaîne (groupe entre parenthèses) correspondante si elle existe. |
leftContext |
La sous-chaîne qui précède la correspondance la plus récente. |
rightContext |
La sous-chaîne qui suit la correspondance la plus récente. |
Les propriétés qui suivent sont désormais des propriétés des instances de RegExp et ne sont plus des propriétés de l'objet RegExp :
| Propriété | Description |
|---|---|
global |
Permet d'utiliser une expression rationnelle pour relever l'ensemble des correspondances ou uniquement la première. |
ignoreCase |
Définit si la casse doit être ignorée ou non lors de la recherche d'une correspondance. |
lastIndex |
L'index à partir duquel chercher la prochaine correspondance. |
multiline |
Définit si la recherche doit s'effectuer sur une seule ligne ou plusieurs. |
source |
Le texte du motif. |
Méthodes de RegExp
- La méthode
compileest dépréciée. - La méthode
valueOfn'est plus spécifiquement liée àRegExp. UtilisezObject.valueOf().
Propriétés de Function
- Les propriétés
calleretargumentssont dépréciées car elles permettaient de fuiter l'appelant de la fonction. En lieu et place de la propriétéarguments, c'est l'objetargumentsqui doit être utilisée (notamment dans les fermetures).
Générateur historique
L'instruction pour le générateur historiqueetl'expression de fonction du générateur historiquesont dépréciées. Il faut utiliserL'instruction function*etl'expression function*à la place.Les compréhensions de tableaux JS1.7/JS1.8etles compréhensions de générateurs JS1.7/JS1.8sont dépréciées.
Itérateur
StopIterationest déprécié.Iteratorest déprécié.
Méthode d'Object
watchetunwatchsont dépréciés. L'objetProxydoit être utilisé à la place.__iterator__est déprécié.__noSuchMethod__est déprécié.Proxydoit être utilisé à la place.
Méthodes de Date
getYearetsetYearsont impactés par le « bug de l'an 2000 » et ont été remplacés pargetFullYearetsetFullYear.toISOStringdoit être utilisé à la place de la méthodetoGMTStringqui est dépréciée.toLocaleFormatest dépréciée.
Fonctions
- Les expressions de fermetures sont dépréciées. Il faut utiliser
functionou les fonctions fléchées à la place.
Proxy
- Proxy.create et Proxy.createFunction sont dépréciées. L'API
Proxydoit être utilisée à la place. - Les trappes de captures suivantes sont obsolètes :
hasOwn(bug 980565, Firefox 33).getEnumerablePropertyKeys(bug 783829, Firefox 37)getOwnPropertyNames(bug 1007334, Firefox 33)keys(bug 1007334, Firefox 33)
Séquences d'échappement
- Les séquences d'échappement octales (\ suivi par un, deux ou trois chiffres octaux) sont dépréciées pour les chaînes de caractères et les littéraux d'expressions rationnelles.
- Les fonctions
escapeetunescapesont dépréciées. Ce sont les méthodes et objetsencodeURI,encodeURIComponent,decodeURIoudecodeURIComponentqui doivent être utilisées pour encoder/décoder les séquences d'échappement des caractères spéciaux.
Méthodes de String
- Les méthodes d'enrobage HTML telles que
String.prototype.fontsizeetString.prototype.bigsont dépréciées. String.prototype.quotea été retiré de Firefox 37.- Le paramètre non-standard
flagsdeString.prototype.search,String.prototype.match, etString.prototype.replacesont dépréciés.
Fonctionnalités obsolètes
Ces fonctionnalités sont obsolètes et ont intégralement été retirées de JavaScript. Elles ne peuvent plus être utilisées.
Object
| Propriété | Description |
|---|---|
__count__ |
Renvoie le nombre de propriétés énumérables d'un objet défini par l'utillisateur. |
__parent__ |
Pointe vers le contexte d'un objet. |
Object.prototype.eval() |
Évalue une chaine de caractères étant du code JavaScript, dans le contexte de l'objet indiqué. |
Object.observe() |
Observe les modifications apportées à un objet de façon asynchrone. |
Object.unobserve() |
Retire les observateurs ajoutés à un objet. |
Object.getNotifier() |
Crée un objet qui permet de déclencher un changement de façon synthétique. |
Function
| Propriété | Description |
|---|---|
arity |
Nombre d'arguments déclarés pour une fonction. |
Array
| Propriété | Description |
|---|---|
Array.observe() |
Observe les modifications apportées à un tableau de façon asynchrone. |
Array.unobserve() |
Retire les observateurs ajoutés à un tableau. |
Number
ParallelArray
Instructions
for each...in, utiliserfor...ofà la place.for...in, utiliserfor...ofà la place.- Les blocs et expressions
letsont obsolètes.
E4X
Voir la page E4X pour plus d'informations.
Sharp variables
Voir la page sur les variables « Sharp » en JavaScript pour plus d'informations.