5 lucruri pe care ar trebui să le cunoașteți despre operatorul „Ștergeți” în JavaScript

SHARE

Demo

în JavaScript Există operatorul OLETE, care este utilizat pentru a șterge proprietatea unui obiect și după ștergerea proprietății, că proprietatea nu mai poate fi accesibilă și returnează valoarea nedefinită, dar există Alte lucruri interesante pe care este important să știți despre ștergerea operatorului în JavaScript și în acest post le împărtășesc.

iv id = „012d5f8d06”
înainte de a continua cu acest post, vă recomand să ascultați podcast: „5 sfaturi pentru a fi un programator mai productiv” (nu sunt Classics Sfaturi de programare tehnică, dacă nu rutine și obiceiuri zilnice bune):
Spotify:

Sound Cloud:

bine acum hai să continuăm cu postul: 5 lucruri pe care ar trebui să știi despre Operatorul „Șterge” în JavaScript.

Când operatorul Olete este invocat pentru a șterge o proprietate, JavaScript returnează adevărat sau altfel returnează fals, acest lucru este valabil numai în proprietățile unui obiect și nu are niciun efect asupra numele variabilelor sau funcțiilor.

Operatorul de ștergere nu trebuie utilizat în proprietățile obiectului predefinit în JavaScript ca fereastră, matematică și dată. Acest lucru poate determina aplicația să funcționeze instabilă. Să vedem o continuă câteva lucruri Despre operatorul de ștergere.

Ștergerea proprietăților unui obiect

Singura modalitate de a elimina complet e Proprietățile unui obiect din JavaScript utilizează operatorul de ștergere:

div id = „AECDA1D489”>
iv id = „eda82358f6”

1
3
4
5
6
9
10

div>

12
12
13
Var suc = {
: „Suc de portocale”,
Pret: „2.50”,
36
}
Console.log (Ștergeți sucul .prucio); // Eliminați „prețul”
consolă.log (suc);
// După executarea comenzii console.log, am obtine doar:
{
Nume: „suc de portocale”,
Stock: 36

După ce a rulat comanda consola.log (suc) pe consola de comandă Chrome Dev, îmi returnează numele și stocul, prețul a fost șters.

Dacă proprietatea care este încercată este, operatorul de ștergere nu va avea nici un efect și nu va reveni la adevărat.

Nu putem șterge variabilele cu instrucțiunea „VAR”

utilizând operatorul de ștergere Puteți șterge proprietățile unui obiect, dar proprietățile declarate Cu declarația VAR nu poate fi ștearsă:

iv id = „Aecda1d489”
iv id = „Eda82358F6”

3
4

/ div>

Var stock = 36;
consola.log (ștergeți stocul);
consola.log (stoc);

Log (stoc) În consola de comandă Chrome Dev, am returnat valoarea stocului, deoarece nu a fost eliminată.

și dacă declar variabila direct fără Declarație:

div id = „ECF688E2C7”>

stoc = 36;
consola.log (ștergeți stocul);
consola.log (stoc);

La executarea comenzii console. Consola de comandă Chrome dev Poate fi șters utilizând operatorul de ștergere:

4

Sucuri, puteți vedea că atunci când imprimați sucurile de matrice în diferite moduri în consola de comandă Chrome Dev, primesc toate datele, mai puțin valoarea a treia, adică sucul de papaya, deoarece a fost eliminat.

Pentru a șterge elementele goale (goale, nul, etc.) Pot rula următorul cod:

2
4
4
5
6

DIV> VAR Sucuri =;
consola.log (ștergeți sucurile); // Eliminată valoarea 3R, adică „sucul de papaya”
consolă.log (sucuri); // atunci când executați, obțineți „nedefinit”
consolă.log (sucuri); // Când executați, am;
consola.log (JSON.Strângeți (sucuri)); // Când executați, am;

div id = „38A496E7A4”>

cu Acest lucru am primit numai valorile disponibile în matricea sucului.

Nu putem elimina obiecte integrate sau predefinite în JavaScript

Nu este sigur să eliminați obiectele predefinite de la JavaScript Limba de programare cum ar fi matematica, data și fereastra, de exemplu, dacă încerc să șterg obiectul predefinit matematic:

div id = „EDA82358F6”

2
3

/ div>

4
7
8
var curat = sucuri.filter (function (e) {
retur e! = null;

iv});

consola.log (curat);
// după executarea comenzii console.log (curat); Am primit:
div id = „eda82358f6”

3

3

consolă.log (matematică);
consola.log (ștergeți matematica);

div> consolă.log (matematică); // Când executați această comandă, consola returnează „Necaught ReferenceRror: Math nu este definit”

poate provoca instabilitate în aplicația mea, am returnat Uncaught Refinecerror: matematica nu este definită.

Nu putem șterge proprietăți neconfigurabile

proprietăți a unui obiect, în plus față de valori, au 3 atribute speciale:

  • sterycabil: Este adevărat dacă valoarea poate fi modificată, altfel citirea este numai pentru citire.
  • Enumerable: este adevărat dacă apare în bucle, altfel nu apare.
  • Configurabil: Este adevărat dacă proprietatea poate fi ștearsă sau atributele pot fi modificate, altfel nu poate fi modificată. ”
    iv id =” eda82358F6 ”

    2
    3
    4
    5
    6
    7
    8
    9
    11
    14

    / div> > 15 16

    Let JUICE = {

    Nume: „suc de portocale”,
    Pret: „2.50”,
    stoc: 36
    lasati descrierea = obiect.getownpropertyScripttor (suc, „preț”);
    consola.log (json.stringfy (descriere));
    // atunci când execută comanda console.log (JSON.Stringfy (descriere)); Obțineți o descriere cu cele 3 atribute speciale:
    „valoare”: „2.50”,
    „wrigable”: TRUE,
    „enumerable”: TRUE,
    „configurabil”: adevarat

> În codul precedent, folosesc metoda Obiect.getownPropertyDescripttor () pentru a obține o descriere a prețului de valoare cu valoarea atributelor sale speciale, scrisă, enumerabilă și configurabilă.

și dacă prețul de valoare i-am configurat configurabilitatea Atribut la FALSE cu metoda Object.Defineproperty (), atunci când încercați să ștergeți prețul JavaScript nu mă va lăsa să o fac:

iv id = „eda82358f6”

1
2
3
6
7
9
9
11
12

div id = ” div id =”

Let Ju. Go = {
Nume: „suc de portocale”,
Pret: „2.50”,
36
}
obiect.defineproperty (suc, „preț”, {
valoare: „2.50”,
configurabil: false
});
consola.log (ștergeți sucul.prucio); // Când încercați să ștergeți prețul, am returnat „False”
Console.log (suc);

(Ștergeți sucul.presio); M-am întors fals, asta pentru că schimbați atributul configurabil la FALSE.

y dacă este configurat modul strict în codul JavaScript:

Me Devuelve Error: Nu se poate șterge proprietatea „preț” # < obiect >

în acest post hemos a observat 5 situații în Ordinul de ștergere a operatorului de ștergere sau completare. Este important să cunoașteți aceste informații și că a început să dezvolte un proiect JavaScript, puteți prezenta unele dintre erorile pe care le-am văzut în acest post, indiferent dacă încearcă să elimine o recuzită objeto.

H2> Notă

  • metode, proprietăți etc. Expunete în acest post, pot reuși să existe sau să continue în versiunile viitoare ale JavaScript, acest lucru nu este dependent de mine, dacă nu de dezvoltatorii că Dan suportă JavaScript.
  • nu Olvides că Debemos să folosească tehnologia pentru Hacer Cosas Buenas de lume.
div id = „eda82358f6”

1
2
3
4
6
7
9
9
10
12
14

15

‘Utilizați strict „
hai să joc = {
Număr:” Jugo de Naranja „,
Pret:” 2.50 „,
36
}
obiect.defineproperty (suc,” presiune ” , {
Valoare: „2.50”,
configurabil: fals
});
consola.log (ștergeți jugo.precio);
consola.log (suc);