Rumah hujung hadapan web tutorial js Operator Tugasan Selamat JavaScript : Alternatif untuk mencuba/menangkap

Operator Tugasan Selamat JavaScript : Alternatif untuk mencuba/menangkap

Oct 29, 2024 am 03:10 AM

Perhatian

Saya ingin menyatakan bahawa Operator Tugasan Selamat mesti disokong dengan polyfill memandangkan ia belum lagi dalam standard ECMAScript. Dalam artikel ini, kami akan meneroka cara menggunakan pengendali tugasan selamat apabila ia berada dalam standard ECMAScript.


Jika anda suka artikel saya, anda boleh belikan saya kopi :)
JavaScript Safe Assignment Operator : Alternative to try/catch


Kami menggunakan cuba/tangkap untuk pengendalian ralat semasa membangun dengan JavaScript, terutamanya apabila bekerja dengan fungsi tak segerak atau API kompleks. ECMAScript mengumumkan pengendali baharu. Operator Tugasan Selamat (?=) memudahkan pengendalian ralat dan menyediakan struktur seragam untuk mengendalikan hasil dan ralat, terutamanya semasa operasi tak segerak.

Apabila anda menggunakan pengendali tugasan selamat, ia menyemak fungsi atau operasi berjaya. Jika berjaya, ia mengembalikan hasilnya. Mengembalikan ralat jika tidak berjaya.

Sekarang mari kita terokai cara menggunakan Operator Tugasan Selamat (?=).


Sekarang mari tulis sintaks untuk permintaan api pengendali tugasan selamat.

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;
}

Dalam Permintaan API, objek dikembalikan pada setiap langkah; Objek ini menyimpan maklumat yang berkaitan dengan permintaan. Kita boleh menggunakan ciri pemusnahan objek untuk mendapatkan data di dalam objek ini. Dengan** Operator Tugasan Selamat** (?=), apabila ralat berlaku dalam permintaan API, kami boleh mendapatkan semula mesej ralat atau kod ralat dengan selamat dengan mengendalikan objek ralat dengan kaedah pemusnahan. const [ralat, respons], ralat mengembalikan ralat. tindak balas mengembalikan data


Penggunaan dalam Objek dan Fungsi

Pengendali ?= boleh digunakan dengan objek atau fungsi yang melaksanakan kaedah Symbol.result.

  • Objek:
const objSafe = {
  [Symbol.result]() {
    return [new Error("Object error"), null];
  }
};

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


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

const [error, result] = safeOperator[Symbol.result](arr);

Kesimpulan

Dalam artikel ini, kami telah mengkaji cara menggunakan pengendali tugasan selamat apabila ia berada dalam standard ECMAScript. Saya rasa dia seorang pengendali yang sangat berguna. kini kami tahu cara menggunakannya.

Atas ialah kandungan terperinci Operator Tugasan Selamat JavaScript : Alternatif untuk mencuba/menangkap. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1602
276
Jenis Bersyarat Lanjutan dalam TypeScript Jenis Bersyarat Lanjutan dalam TypeScript Aug 04, 2025 am 06:32 AM

Jenis Keadaan Lanjutan TypeScript Melaksanakan penghakiman logik antara jenis melalui Textendsu? X: Y Sintaks. Keupayaan terasnya ditunjukkan dalam jenis keadaan yang diedarkan, kesimpulan jenis kesimpulan dan pembinaan alat jenis kompleks. 1. Jenis bersyarat diedarkan dalam parameter jenis kosong dan secara automatik boleh memecah jenis bersama, seperti toarray untuk mendapatkan rentetan [] | number []. 2. Menggunakan Pengagihan untuk Membina Alat Penapisan dan Pengekstrakan: Tidak termasuk Kecualikan Jenis Melalui Textendsu? Tidak pernah: T, Ekstrak Ekstrak Persamaan melalui Textendsu? 3

Mikro Frontends Architecture: Panduan Pelaksanaan Praktikal Mikro Frontends Architecture: Panduan Pelaksanaan Praktikal Aug 02, 2025 am 08:01 AM

Microfrontendssolvescalingchallengesinlargeteamsbyenablingindependentdevelopmentanddeployment.1) chooseanInintegrationstration: useModulefederationInwebPack5formruntimeLoadingandtrueindectivence, Build-timeIntegrationForseMlesetups, Oriframes/Web

Apakah perbezaan antara var, biarkan, dan const dalam javascript? Apakah perbezaan antara var, biarkan, dan const dalam javascript? Aug 02, 2025 pm 01:30 PM

varisfunction-scoped, canbereassigned, omredwithundefined, andattachedtotheglobalwindowobject; 2.Letandconstareblock-scoped, withletallowingreassignmentandconstnotallowingit, everconstobjectscanhaveMutabeTerSties;

Apakah pilihan Chaining (?) Dalam JS? Apakah pilihan Chaining (?) Dalam JS? Aug 01, 2025 am 06:18 AM

Optionalchaining (?) InjavaScriptSafelyAccessSnestedPropertiesByReturningundefinedifanypartofthechainisnullorundefined, mencegahRuntimeerrors.1.itallowssafeaccesstodeperlynestedobjectproperties?

Menjana teka -teki coklat berganda yang diselesaikan: Panduan untuk struktur data dan algoritma Menjana teka -teki coklat berganda yang diselesaikan: Panduan untuk struktur data dan algoritma Aug 05, 2025 am 08:30 AM

Artikel ini meneroka secara mendalam bagaimana untuk menghasilkan teka-teki yang dapat diselesaikan secara automatik untuk permainan teka-teki double-choco. Kami akan memperkenalkan struktur data yang cekap - objek sel berdasarkan grid 2D yang mengandungi maklumat sempadan, warna, dan keadaan. Atas dasar ini, kami akan menghuraikan algoritma pengiktirafan blok rekursif (serupa dengan carian kedalaman pertama) dan bagaimana untuk mengintegrasikannya ke dalam proses penjanaan teka-teki berulang untuk memastikan teka-teki yang dihasilkan memenuhi peraturan permainan dan dapat diselesaikan. Artikel ini akan menyediakan kod sampel dan membincangkan pertimbangan utama dan strategi pengoptimuman dalam proses penjanaan.

Bagaimanakah anda boleh mengeluarkan kelas CSS dari elemen DOM menggunakan JavaScript? Bagaimanakah anda boleh mengeluarkan kelas CSS dari elemen DOM menggunakan JavaScript? Aug 05, 2025 pm 12:51 PM

Kaedah yang paling biasa dan disyorkan untuk membuang kelas CSS dari elemen DOM menggunakan JavaScript adalah melalui kaedah mengeluarkan () harta klasik. 1. Gunakan elemen.classlist.remove ('className') untuk memadamkan satu kelas tunggal atau berganda dengan selamat, dan tiada kesilapan akan dilaporkan walaupun kelas tidak wujud; 2. Kaedah alternatif adalah untuk mengendalikan harta kelas secara langsung dan mengeluarkan kelas dengan penggantian rentetan, tetapi mudah untuk menyebabkan masalah disebabkan oleh pemprosesan yang tidak tepat atau pemprosesan ruang yang tidak betul, jadi tidak disyorkan; 3. 4.Classlist

Apakah sintaks kelas dalam JavaScript dan bagaimana ia berkaitan dengan prototaip? Apakah sintaks kelas dalam JavaScript dan bagaimana ia berkaitan dengan prototaip? Aug 03, 2025 pm 04:11 PM

Sintaks kelas JavaScript adalah gula sintaks yang diwarisi oleh prototaip. 1. Kelas yang ditakrifkan oleh kelas pada dasarnya adalah fungsi dan kaedah ditambah kepada prototaip; 2. Contohnya mencari kaedah melalui rantaian prototaip; 3. Kaedah statik tergolong dalam kelas itu sendiri; 4. Memperluas mewarisi melalui rantaian prototaip, dan lapisan asas masih menggunakan mekanisme prototaip. Kelas tidak mengubah intipati warisan prototaip JavaScript.

Routing Vercel Spa dan Pemuatan Sumber: Selesaikan masalah akses URL yang mendalam Routing Vercel Spa dan Pemuatan Sumber: Selesaikan masalah akses URL yang mendalam Aug 13, 2025 am 10:18 AM

Artikel ini bertujuan untuk menyelesaikan masalah penyegaran URL yang mendalam atau akses langsung menyebabkan kegagalan memuatkan sumber halaman apabila menggunakan aplikasi halaman tunggal (SPA) di VERECE. Inti adalah untuk memahami perbezaan antara mekanisme penulisan semula Vercel dan laluan penyemak imbas yang relatif. Dengan mengkonfigurasi vercel.json untuk mengalihkan semua laluan ke index.html, dan membetulkan kaedah rujukan sumber statik dalam HTML, mengubah laluan relatif ke jalan mutlak, memastikan bahawa aplikasi itu dapat memuatkan semua sumber dengan betul di bawah mana -mana URL.

See all articles