非推奨の機能、廃止された機能

このページのリストは JavaScript で廃止予定(まだ使用できるが削除する予定)とされた、あるいは既に廃止され使用不可となった機能の一覧です。

非推奨の機能

これらの非推奨機能はまだ使用可能かもしれません。しかし将来的には完全に削除されるでしょう。既にコード内でこれらを使用している場合は、代替となるコードに置き換えておく必要があります。

RegExp のプロパティ

以下のプロパティは非推奨です。これらは文字列置換で使用しても効果がありません。

プロパティ 説明
$1-$9

(もしあれば)括弧で囲まれた部分文字列にイッチします。 警告:このプロパティを使うことで、問題が起こる恐れがあります。なぜなら、ブラウザーの拡張機能がそれらを変更可能なためです。使用は避けるべきです。

$_ `input` プロパティを参照してください。
$* `multiline` プロパティを参照してください。
$& `lastMatch` プロパティを参照してください。
$+ `lastParen` プロパティを参照してください。
$` `leftContext` プロパティを参照してください。
$' `rightContext` プロパティを参照してください。
input 正規表現が一致する対象となる文字列。
lastMatch 最後に一致した文字。
lastParen (もしあれば)最後に括弧で囲まれた部分文字列の一致。
leftContext 一番最近の一致に先行する部分文字列。
rightContext 一番最近の一致の後に続く部分文字列。

以下は、現在、RegExp インスタンスのプロパティとなり、RegExp オブジェクトのプロパティではなくなりました。

プロパティ 説明
global 対象文字列で可能な一致すべてに対して正規表現をテストするか、それとも、最初の一致に対してのみテストするどうかのフラグです。
ignoreCase 文字列の照合を試みる際に、大文字と小文字の違いを無視するかどうかのフラグです。
lastIndex 次の照合が始まる位置です。
multiline 複数行に渡って文字列を検索するかどうかのフラグです。。
source パターンのテキストです。

RegExp オブジェクトのメソッド

  • compile() メソッドは、非推奨です。
  • valueOf メソッドは、 RegExp のみのメソッドではなくなりました。Object.valueOf() を使用してください。

Function オブジェクトのプロパティ

  • callerarguments プロパティは廃止されました。これは呼び出した関数を取得できてしまうためです。この arguments プロパティの代わりに、クロージャ内部の arguments オブジェクトを使用してください。

旧形式のジェネレーター

イテレーター

Object オブジェクトのメソッド

  • watch および unwatch は非推奨です。代わりに Proxy を使用してください。
  • __iterator__ は非推奨です。
  • __noSuchMethod__ は非推奨です。代わりに Proxy を使用してください。

Date のメソッド

関数

Proxy

エスケープシーケンス

  • 文字列内と正規表現リテラル内での、8 進表記のエスケープシーケンス (\ に続く、1 つ、2 つ、もしくは、3 つの 8 進表現の数字) は非推奨です。
  • escapeunescape 関数は非推奨です。特殊文字のためのエスケープシーケンスをエンコードかデコードするためには、encodeURIencodeURIComponentdecodeURI もしくは decodeURIComponent を使用してください。

String のメソッド

廃止された機能

これらの廃止された機能は、 JavaScript から完全に削除され、表示されているバージョンの JavaScript からは使用できなくなりました。

Object

プロパティ 説明
__count__ ユーザー定義のオブジェクトに直接定義した、列挙可能なプロパティの個数を返します。
__parent__ オブジェクトのコンテキストを指し示します。
Object.prototype.eval() 指定したオブジェクトのコンテキスト内の JavaScript コードの文字列を評価します。
Object.observe() オブジェクトに対する変更を非同期に監視します。
Object.unobserve() オブザーバーを削除します。
Object.getNotifier() 合成的に変化を引き起こすことができるオブジェクトを作成します。

Function

プロパティ 説明
arity 正式な引数の数です。

String

  • 標準外の String の汎用メソッド、たとえば String.slice(myStr, 0, 12), String.replace(myStr, /./g, "!") などは、 Firefox 1.5 (JavaScript 1.6) で導入され、Firefox 53 で非推奨となり、そして Firefox 68 で廃止されました。代わりに String.prototype 上のメソッドを Function.call と共に使用することができます。

Array

  • 標準外の Array の汎用メソッド、例えば Array.slice(myArr, 0, 12), Array.forEach(myArr, myFn) などは、 Firefox 1.5 (JavaScript 1.6) で導入され、Firefox 68 で非推奨となり、Firefox 71 で削除されました。代わりに Array.prototype 上のメソッドを Function.call と共に使用することができます。
プロパティ 説明
Array.observe() 配列に対する変更を非同期に監視します。
Array.unobserve() observer を削除します。

Number

ParallelArray

  • for each...in は非推奨です。代わりに for...of を使用してください。
  • 分割代入の for...in は非推奨です。代わりに for...of を使用してください。
  • let ブロックおよび、 let 式は廃止されました。

シャープ変数

詳しくは JavaScript でのシャープ変数をご覧ください。