ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript の安全な代入演算子: try/catch の代替演算子

JavaScript の安全な代入演算子: try/catch の代替演算子

Linda Hamilton
リリース: 2024-10-29 03:10:30
オリジナル
293 人が閲覧しました

注意

安全な代入演算子はまだ ECMAScript 標準に含まれていないため、ポリフィルでサポートする必要があることを指摘したいと思います。この記事では、ECMAScript 標準にある場合に安全な代入演算子を使用する方法を検討します。


私の記事が気に入ったら、コーヒーをおごってください :)
JavaScript Safe Assignment Operator : Alternative to try/catch


JavaScript で開発するとき、特に非同期関数や複雑な API を操作するとき、エラー処理に try/catch を使用します。 ECMAScript が新しいオペレーターを発表しました。 安全な代入演算子 (?=) は、エラー処理を簡素化し、特に非同期操作中の結果とエラーを処理するための統一された構造を提供します。

安全な代入演算子を使用すると、関数または操作が成功したかどうかがチェックされます。成功した場合は結果を返します。失敗した場合はエラーを返します。

次に、安全な代入演算子 (?=) の使用方法を見てみましょう。


次に、安全な代入演算子の API リクエストの 構文を作成しましょう。

async function fetchData() {
  const [error, response] ?= await fetch("https://jsonplaceholder.typicode.com/todos/1"); // safe assigment op.

  if (error) {
    console.error("Fetch error:", error);
    return;
  }

  const [jsonError, jsonData] ?= await response.json();

  if (jsonError) {
    console.error("JSON error:", jsonError);
    return;
  }

  return jsonData;
}
ログイン後にコピー

API リクエスト では、各ステップでオブジェクトが返されます。このオブジェクトには、リクエスト に関連する情報が保存されます。 オブジェクトの構造化 機能を使用して、このオブジェクト内のデータを取得できます。 ** 安全な代入演算子** (?=) を使用すると、API リクエスト でエラーが発生した場合、構造化メソッドでエラー オブジェクトを処理することで、エラー メッセージまたはエラー コードを安全に取得できます。 const [エラー, 応答]、エラーはエラーを返します。 レスポンスはデータを返します


オブジェクトと関数での使用法

?= 演算子は、Symbol.result メソッドを実装するオブジェクトまたは関数で使用できます。

  • オブジェクト:
const objSafe = {
  [Symbol.result]() {
    return [new Error("Object error"), null];
  }
};

const [error, result] ?= objSafe;
console.log(error)

ログイン後にコピー

  • 機能:
function safeOperator(arr) {
  return 'data';
}

const [error, result] = safeOperator[Symbol.result](arr);
ログイン後にコピー

結論

この記事では、ECMAScript 標準 での 安全な代入演算子 の使用方法を検討しました。とても有能なオペレーターだと思います。これで使い方がわかりました。

以上がJavaScript の安全な代入演算子: try/catch の代替演算子の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート