Características en desuso y obsoletas
Esta página enumera las características de JavaScript que están en desuso (es decir, todavía están disponibles pero se planea eliminarlas) y obsoletas (es decir, que ya no se pueden usar).
Características en desuso
Estas características desaconsejadas aún se pueden usar, pero se deben usar con precaución porque se espera que se eliminen por completo en el futuro. Deberías trabajar para sustituirlas con las versiones recomendadas en tu código.
Propiedades de RegExp
las siguientes propiedades están en desuso. Esto no afecta su uso en el reemplazo de cadenas:
Propiedad | Descripción |
---|---|
$1-$9 |
Coincidencias de subcadenas entre paréntesis, si las hay. Precaución: El uso de estas propiedades puede generar problemas, ya que las extensiones del navegador pueden modificarlas. ¡Evítalas! |
$_ |
Consulta entrada . |
$* |
Consulta multiline . |
$& |
Consulta lastMatch . |
$+ |
Consulta lastParen . |
$` |
Consulta leftContext . |
$' |
Consulta rightContext . |
input |
La cadena contra la que se compara una expresión regular. |
lastMatch |
Los últimos caracteres coincidentes. |
lastParen |
La última coincidencia de subcadena entre paréntesis, si la hubiera. |
leftContext |
La subcadena que precede a la coincidencia más reciente. |
rightContext |
La subcadena que sigue a la coincidencia más reciente. |
Las siguientes ahora son propiedades de instancias de RegExp
, ya no del objeto RegExp
:
Propiedad | Descripción |
---|---|
global |
Si se debe probar o no la expresión regular con todas las posibles coincidencias en una cadena, o solo con la primera. |
ignoreCase |
Si se deben o no ignorar las mayúsculas/minúsculas al intentar una coincidencia en una cadena. |
lastIndex |
El índice en el que comenzará la siguiente coincidencia. |
multiline |
Si buscar o no en cadenas de varias líneas. |
source |
El texto del patrón. |
Métodos RegExp
- El método
compile()
está en desuso. - El método
valueOf
ya no está especializado paraRegExp
. UsaObject.valueOf()
.
Propiedades de función
Generador heredado
- La
Declaración de función del generador heredado
yExpresión de función del generador heredado
están en desuso. En su lugar usadeclaraciones function*
yexpresión function*
. JS1.7/JS1.8 Array comprehension
yJS1.7/JS1.8 Generator comprehension
están en desuso.
Iterador
StopIteration
está en desuso.Iterator
está en desuso.
Métodos de objeto
Métodos de Date
getYear
ysetYear
se ven afectados por el problema del año 2000 y se han subsumido porgetFullYear
ysetFullYear
.- En nuevo código, debes usar
toISOString
en lugar del método en desusotoGMTString
. toLocaleFormat
está en desuso.
Funciones
- Las expresiones closure están en desuso. En su lugar, utiliza
funciones
o funciones de flecha normales.
Proxy
- Proxy.create y Proxy.createFunction están en desuso. En su lugar usa
Proxy
. - Las siguientes trampas están obsoletas:
hasOwn
(bug 980565, Firefox 33).getEnumerablePropertyKeys
(bug 783829, Firefox 37)getOwnPropertyNames
(bug 1007334, Firefox 33)keys
(bug 1007334, Firefox 33)
Secuencias de escape
- Las secuencias de escape octales (\ seguida de uno, dos o tres dígitos octales) están en desuso en los literales de cadenas y expresiones regulares.
- Las funciones
escape
yunescape
están en desuso. UsaencodeURI
,encodeURIComponent
,decodeURI
odecodeURIComponent
para codificar y decodificar secuencias de escape para caracteres especiales.
Métodos de cadena
- Métodos de envoltura HTML tal como
String.prototype.fontsize
yString.prototype.big
. String.prototype.quote
se eliminó desde Firefox 37.- el parámetro no estándar
flags
enString.prototype.search
,String.prototype.match
yString.prototype.replace
están en desuso. String.prototype.substr
probablemente no se eliminará pronto, pero está definido en el Anexo B del estándar ECMA-262, cuya introducción dice: "... Los programadores no deben usar o asumir la existencia de estas características y comportamientos al escribir un nuevo código ECMAScript. ..."
Características obsoletas
Estas características obsoletas se han eliminado por completo de JavaScript y ya no se pueden utilizar a partir de la versión indicada de JavaScript.
Objeto
Propiedad | Descripción |
---|---|
__count__ |
Devuelve el número de propiedades enumerables directamente en un objeto definido por el usuario. |
__parent__ |
Apunta al contexto de un objeto. |
Object.prototype.eval() |
Evalúa una cadena de código JavaScript en el contexto del objeto especificado. |
Object.observe() |
Observar de forma asincrónica los cambios en un objeto. |
Object.unobserve() |
Elimina observadores. |
Object.getNotifier() |
Crea un objeto que permite desencadenar sintéticamente un cambio. |
Función
Propiedad | Descripción |
---|---|
arity |
Número de argumentos formales. |
Array
Propiedad | Descripción |
---|---|
Array.observe() |
Observación asincrónica de cambios en los arreglos. |
Array.unobserve() |
Elimina observadores. |
Número
ParallelArray
Declaraciones
for each...in
está obsoleta. En su lugar utilizafor...of
.- La desestructuración
for...in
está obsoleta. En su lugar utilizafor...of
. - los bloques let y la expresiones let están obsoletas.
E4X
Consulta E4X para obtener más información.
Variables nítidas
Consulta Variables nítidas en JavaScript para obtener más información.