いつもお世話になっています。
【質問の主旨】で示すJavaScriptコード(promise.js)について質問です。
ご存知の方がいらっしゃいましたらご教示を願います。


【質問の主旨】

function runAsync(value) {
  return new Promise((resolve, reject) => {
    setTimeout(() => {
      if (typeof value === 'number') {
        resolve(value * 2);
      } else {
        reject(new Error(`${value}は数値ではありません。`));
      }
    }, 500);
  });
}

runAsync(15)
  .then(response => console.log(`成功[${response}]`))
  .catch(error => console.log(`失敗[${error}]`))
  .finally(() => console.log('終了'));

このファイルを実行すると2秒後にrunAsync関数の引数になっている数字が、2倍に変化してコンソール画面に表示されるコードです。

.finally(() => console.log('終了'));
          ^
TypeError: runAsync(...).then(...).catch(...).finally is not a function

node promise.jsでターミナルから実行すると上記のエラーが表示されます。なぜでしょうか?

【質問の補足】

runAsync(15)
  .then(response => console.log(`成功[${response}]`))
  .catch(error => console.log(`失敗[${error}]`));

上記の通りメソッド2つに減らすと、成功[30]とだけ表示されます


以上、ご確認のほどよろしくお願い申し上げます。