Muundo wa Tukio za Kuzalika cha JavaScript

Lchapu hii inakadiri makosa ya kawaida za JavaScript.

Kuwasiliana kwa uharibifu wa kinaagiza

Kama mtafiti anasababisha kinaagiza kwenye: if Kuwasiliana kwa uharibifu wa kinaagiza kwenye:=(...bila kufikiria kama operatori ya kinaagiza)=====(...), programu za JavaScript inaweza kubadilika kwa huzuni.

Hii if Makadiri inaonekana kwenye: mengine(kama ilivyoagiza), kwa sababu x haikupatikana kama 10:

var x = 0;
if (x == 10) 

Jifunze tena

Hii if Makadiri inaonekana kwenye: kinaagiza(...bila kufikiria), kwa sababu 10 inaonekana kama mengine:

var x = 0;
if (x = 10) 

Jifunze tena

Hii if Makadiri inaonekana kwenye: mengine(...bila kufikiria), kwa sababu 0 inaonekana kama mengine:

var x = 0;
if (x = 0) 

Jifunze tena

Kusababisha kinaagiza inaonekana kwenye:

Uagiza kinaagiza

Kwenye kinaagiza kwa kinaagiza, aina ya data inaonekana sana. Hii if Makadiri inaonekana kwenye: kinaagiza:

var x = 10;
var y = "10";
if (x == y) 

Jifunze tena

Kwenye kinaagiza kwa kinaagiza, aina ya data inahusishwa sana. Hii if Makadiri inaonekana kwenye: mengine:

var x = 10;
var y = "10";
if (x === y) 

Jifunze tena

Kuna uharibifu muhimu sana inayotokana na kufaikia switch Makadiri inayotumiwa kwa kusababisha kinaagiza:

Hii switch Makadiri inaonekana kwenye mkono:

var x = 10;
switch(x) {
    case 10: alert("Hello");
}

Jifunze tena

Hii switch Makadiri hayakupakishwa kwenye mkono:

var x = 10;
switch(x) {
    case "10": alert("Hello");
}

Jifunze tena

Kuamua na kusambatisha

KuongezaInayotumiwa kwa kuongezaThamani.

Kusambatisha (Concatenation)Inayotumiwa kwa kuongezaMatukio.

Kwenye JavaScript, mbadala ya kufanya kila kitu kwa kawaida una kufanya kila kitu kwa kawaida + Operatori.

Kwa sasa, kuongeza maneno kama thamani na kuongeza maneno kama matukio ni inayofanya matokeo tofauti:

var x = 10 + 5;          // matokeo ya x ni 15
var x = 10 + "5";         // matokeo ya x ni "105"

Jifunze tena

Kama ni mabaki mbili ya kuongeza, kinaagiza kuwa nafasi ya matokeo:

var x = 10;
var y = 5;
var z = x + y;            // matokeo ya z ni 15
var x = 10;
var y = "5";
var z = x + y;            // matokeo ya z ni "105"

Jifunze tena

Mfano wa kumefikiria kwa urahisi

Maneno ya JavaScript yana hifadhiwa kama ya 64 bitiMifano ya uangalifu (Floats).

Kila lugha ya programu, ikiwemo JavaScript, inaona kihadhi kwa kumtumia mifano ya tukio wa uangalifu.

var x = 0.1;
var y = 0.2;
var z = x + y             // matokeo ya z sio 0.3

Jifunze tena

Kusaidia matokeo ya juu, tumia kufikia kwa umri wa kikabila na kusababisha:

Mifano

var z = (x * 10 + y * 10) / 10;       // matokeo ya z kimepatikana ni 0.3

Jifunze tena

Kuingia tena kwa mifano ya siku ya string ya JavaScript

JavaScript inaruhusiwa kuingia tena mada kwa mifano ya siku ya pili:

Mfano 1

var x =
"Hello World!";

Jifunze tena

Kama hivyo, kuingia tena kwa mifano ya siku kwenye string inasababisha:

Mfano 2

var x = "Hello
World!";

Jifunze tena

Mfano 3

var x = "Hello \
World!";

Jifunze tena

Ishara ya kuingia tena kwa mifano ya siku inayotokea

Kwa sababu ya ishara ya kuingia tena kwa mifano ya siku, kwa uwanja wa x na yote inaenda kufanya:

if (x == 19);
{
     // code block
}

Jifunze tena

Kuingia tena kwa mada ya 'return'

Kumaliza mada kwa mifano ya siku inayopita ni muhimu wa kufikia kwa uwanja wa JavaScript.

Kwa sababu hivyo, mifano ya pili na ya tatu inatokana na matokeo yoyote ya kawaida:

Mfano 1

function myFunction(a) {
    var power = 10  
    return a * power
}

Jifunze tena

Mfano 2

function myFunction(a) {
    var power = 10;
    return a * power;
}

Jifunze tena

JavaScript inaruhusiwa kuingia tena mada kwa mifano ya siku ya pili.

Kwa sababu hivyo, mfano 3 itakurudisha matokeo yoyote ya kawaida:

Mfano 3

function myFunction(a) {
    var
    power = 10;  
    return a * power;
}

Jifunze tena

Kama hivyo, hadi kuingia tena kwa mifano ya siku inayofuata: return Kivinjari hii inatofautiana kama inatokana na mifano ya siku yafuatayo:

Mfano 4

function myFunction(a) {
    var
    power = 10;  
    return
    a * power;
}

Jifunze tena

Fungili hii itakurudisha: bila maana!

Kwa nini? Kwa sababu JavaScript inaonesha kwamba:

Mfano 5

function myFunction(a) {
     var
    power = 10;  
    return;
    a * power;
}

Jifunze tena

taarifa

Kivinjari hii inaonekana inaona:

var

JavaScript itakapokamilika kwa uwanja wa mada hii kwa kusoma mifano ya siku inayofuata:

power = 10;

Kwa sababu mada hii itakupofikia:

return

JavaScript itakapokamilika kwa uwanja wa mada hii:

return;

Kivinjari hii inatofautiana kwa sababu katika JavaScript, kuingia tena kwa kutisha (kumaliza) mada inaonekana kwa kufikia.

JavaScript itakapokamilika katika mifano ya ukumu wa siku return madai, kwa sababu haukuwa na ukweli wa kumaliza kufikia mada hiyo.

Tabia, hata hivyo, kumwambia return madai kuingia tena

Kuingia tena laingia kwa kutumia mifano ya jina

Masharti ya kingereza wa kingereza wanaonyesha mabara ya jina la mabara.

Mabara ya jina la mabara inaitwa mabara ya jina (au hasira).

JavaScript HaukufaaMabara ya jina la mabara.

Kwenye JavaScript,MabaraTumia:Jina la mabara:

Mifano

var person = [];
person[0] = "Bill";
person[1] = "Gates";
person[2] = 46;
var x = person.length;          // person.length itakuwa 3
var y = person[0];              // person[0] itakuwa 'Bill'

Jifunze tena

Kwenye JavaScript,KifaaTumia:Jina la mabara.

Ikiwa unatumia jina la mabara, kama unaona jina la mabara, JavaScript itakapokubali kurekodia kwa kufikia kama kiwango cha standardi cha kifaa.

Baada ya kurekodia kwa kuzungumza, kazi ya jina la mabara au kipengele kinakapata matokeo ya watu hauonekani au ya huzungumza kwa uadilifu:

Mifano

var person = [];
person["firstName"] = "Bill";
person["lastName"] = "Gates";
person["age"] = 46;
var x = person.length;         // person.length itakuwa 0
var y = person[0];              // person[0] itakuwa 'Bill'

Jifunze tena

Tumia koma kuishika kufikia kwa kufikia:

Koma cha kushika katika uafisha wa kiwango na jina la mabara ni haki katika ECMAScript 5.

Matokeo wa kiwango:

person = {firstName:"Bill", lastName:"Gates", age:62,};

Matokeo wa jina la mabara:

points = [35, 450, 2, 7, 30, 16,];

Wachagia !!

Internet Explorer 8 inapungua.

JSON haonyeshe koma cha kushika.

JSON:

person = {firstName:"Bill", lastName:"Gates", age:62};

JSON:

points = [35, 450, 2, 7, 30, 16];

Undefined si Null

Mfumo wa JavaScript, jina, ujumbe na vifaa yanaweza kuhadhiwa kama watu hauonekani.

Hata hivyo, watu wa JavaScript wa hauonekani huzungumza kwa uadilifu: bila maana.

Hii inaweza kumekuwa kizama kufikia au haukuwa na matokeo wa matokeo wa mtandao:

Unaweza kufikia kwa kuteza aina hiyo inaonekana: bila maanaKutoka kwa kufikia au haukuwa na matokeo:

Mifano

if (typeof myObj === "undefined")

Jifunze tena

Hata hivyo, huzungumzwa kinaa inaonekana kinaa: bila maanakwa sababu kama kinaa bila maana, inatokana na kinaa:

Ni sahihi:

if (myObj === null)

Kuondoa hiki, lazima kuteleza kinaa inaonekana kinaa: bila maanabila maana, hali ya kinaa bila maana.

Hata hivyo, hii inatokana na kinaa:

Ni sahihi:

if (myObj !== null && typeof myObj !== "undefined")

Kwa hivyo, kabla ya kuteleza kinaa, lazima kuonekana kwamba inahitaji kuteleza bila maana:

Ni sahihi:

if (typeof myObj !== "undefined" && myObj !== null)

Jifunze tena

inaona eneo la kinaa kinaa

JavaScript hakunainaunda eneo la kinaa kinaa kwa kichupo kinaa kinaa.

Kinaa kinaa za kingereza zinaonekana kama hivi, lakini JavaScript Hakuna.

inaonekana kwamba hii inatokana na kichupo hiki bila maanani kinaa ya mwanachama wa uandishi wa JavaScript wa kinaa:

Mifano

for (var i = 0; i < 10; i++) {
  // Inafahamu kwa kichupo
}
return i;

Jifunze tena