Latest web development tutorials
×

JavaScript kuliah

JavaScript kuliah JavaScript pengantar singkat JavaScript pemakaian JavaScript ekspor JavaScript tatabahasa JavaScript laporan JavaScript catatan JavaScript variabel JavaScript Jenis Data JavaScript benda JavaScript fungsi JavaScript cakupan JavaScript peristiwa JavaScript tali JavaScript operator JavaScript membandingkan JavaScript If...Else JavaScript switch JavaScript for JavaScript while JavaScript Break & Continue JavaScript typeof JavaScript Jenis Konversi JavaScript Regular Expressions JavaScript kesalahan JavaScript debugging JavaScript angkat variabel JavaScript Modus yang ketat JavaScript Gunakan tidak tepat JavaScript bentuk Authentication JavaScript Reserved Keywords JavaScript JSON JavaScript void JavaScript kode Spesifikasi

JS fungsi

JavaScript definisi fungsi JavaScript Argumen fungsi JavaScript fungsi panggilan JavaScript penutupan

JS HTML DOM

DOM pengantar singkat DOM HTML DOM CSS DOM peristiwa DOM EventListener DOM elemen

JS canggih Tutorial

JavaScript benda JavaScript Number JavaScript String JavaScript Date JavaScript Array JavaScript Boolean JavaScript Math JavaScript RegExp benda

JS Browser BOM

JavaScript Window JavaScript Window Screen JavaScript Window Location JavaScript Window History JavaScript Navigator JavaScript pop JavaScript Kegiatan Jangka waktu JavaScript Cookies

JS gudang

JavaScript gudang JavaScript uji jQuery JavaScript uji Prototype

JS contoh

JavaScript contoh JavaScript contoh objek JavaScript Browser contoh objek JavaScript HTML DOM contoh JavaScript ringkasan

JS Reference manual

JavaScript benda HTML DOM benda

Gunakan tidak tepat JavaScript

bab ini kita akan membahas penggunaan kesalahan JavaScript.


Aplikasi kesalahan operator penugasan

Dalam program JavaScript jika Anda menggunakan pernyataan kondisional jika operator penugasan adalah tanda sama dengan (=) akan menghasilkan hasil kesalahan, pendekatan yang benar adalah dengan menggunakan perbandingan dua tanda sama (==).

jika pernyataan kondisional mengembalikan false (kami berharap) karena x tidak sama dengan 10:

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

Coba »

jika pernyataan kondisional mengembalikan benar (bukan bahwa kita diharapkan) pernyataan dieksekusi karena kondisi untuk tugas x 10,10 benar:

var x = 0;
jika (x = 10)

Coba »

jika pernyataan kondisional kembali palsu (bukan apa yang kita harapkan) pernyataan dieksekusi karena kondisi untuk tugas x 0,0 adalah palsu:

var x = 0;
jika (x = 0)

Coba »
catatan Mengembalikan nilai dari variabel tugas.

Kesalahan umum perbandingan

Dibandingkan konvensional, tipe data diabaikan, jika pernyataan kondisi berikut mengembalikan nilai true:

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

Coba »

Dalam operasi perbandingan yang ketat, perhitungan identitas === operator, sedangkan nilai ekspresi memeriksa jenis, kondisi berikut jika pernyataan kembali palsu:

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

Coba »

Kesalahan ini sering terjadi pada pernyataan switch, beralih pernyataan dihitung dengan menggunakan operator identitas (===) dibandingkan:

Contoh berikut akan mengeksekusi peringatan pop:

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

Coba »

Contoh berikut ini tidak konsisten karena jenis tidak melakukan popup peringatan:

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

Coba »

Menambah dan Pertimbangan Connection

Selain dari dua angka bersama.

Connection string untuk menghubungkan dua.

Selain dan JavaScript yang terhubung menggunakan operator +.

Selanjutnya, kita bisa melihat dua angka bersama dan terhubung ke sejumlah nomor dan perbedaan dengan cara misalnya:

var x = 10 + 5; // x 15 Hasil
var x = 10 + "5" ; Hasil // x adalah "105"

Coba »

Menggunakan variabel menambahkan hasilnya tidak konsisten:

var x = 10;
var y = 5;
var z = x + y; Hasil // z adalah 15

var x = 10;
var y = "5";
var z = x + y; Hasil // z adalah "105"

Coba »

Perhatikan penggunaan floating-point Data

JavaScript Semua data yang didasarkan pada 64-bit floating point tipe data (float) untuk menyimpan.

Semua bahasa pemrograman, termasuk JavaScript, floating akurasi titik data yang sulit untuk menentukan:

var x = 0,1;
var y = 0,2;
var z = x + y Hasil // z adalah 0,3
jika (z == 0.3) // Mengembalikan palsu

Coba »

Aku memecahkan masalah ini, Anda dapat menggunakan perkalian bilangan bulat dan pembagian untuk memecahkan:

contoh

var z = (x * 10 + y * 10) / 10; // hasil z adalah 0,3

Coba »

Cabang tali JavaScript

Kami menggunakan line break untuk menjalankan pernyataan JavaScript dalam string:

contoh 1

var x =
"Hello World!";

Coba »

Namun, dalam string kembali kereta langsung sedang diberikan untuk:

contoh 2

var x = "Hello
Dunia "!;

Coba »

Kita bisa memilih alat pengembangan atau tekan F12 untuk melihat pesan error:

string line istirahat perlu menggunakan backslash (\), sebagai berikut:

contoh 3

var x = "Hello \
Dunia "!;

Coba »

salah koma

Contoh berikut, karena koma yang salah, jika blok pernyataan kode tidak akan dieksekusi:

if (x == 19);
{
// Kode blok
}

Coba »

Kembali Kewaspadaan pernyataan

JavaScript adalah default otomatis berakhir pada baris terakhir kode.

Dua contoh berikut mengembalikan hasil yang sama (tidak titik koma):

contoh 1

Fungsi myFunction (a) {
daya var = 10
kembali kekuatan *
}

Coba »

contoh 2

Fungsi myFunction (a) {
daya var = 10;
kembali kekuatan *;
}

Coba »

JavaScript juga dapat digunakan untuk mengakhiri sebuah pernyataan multi-line.

Contoh berikut mengembalikan hasil yang sama:

contoh 3

Fungsi myFunction (a) {
var
kekuatan = 10;
kembali kekuatan *;
}

Coba »

Namun, contoh-contoh berikut dari hasil dikembalikanterdefinisi:

contoh 4

Fungsi myFunction (a) {
var
kekuatan = 10;
kembali
a * listrik;
}

Coba »

Mengapa ada hasil tersebut? Karena dalam JavaScript, contoh yang konsisten 4 kode dan kode berikut:

function myFunction(a) {
    var
    power = 10;  
    return;       // 分号结束,返回 undefined
    a * power;
}

menyelesaikan

Jika itu adalah pernyataan yang tidak lengkap, sebagai berikut:

var

JavaScript akan mencoba untuk membaca pernyataan baris kedua:

power = 10;

Namun, karena pernyataan ini selesai:

return

JavaScript akan secara otomatis mematikan pernyataan:

return;

Dalam JavaScript, titik koma adalah opsional.

Sejak pengembalian adalah kalimat lengkap, itu akan mematikan pernyataan kembali JavaScript.

catatanCatatan: Jangan melanggar garis pernyataan kembali.

Gunakan nama indeks array

Banyak bahasa pemrograman memungkinkan penggunaan nama sebagai indeks array.

Untuk menggunakan nama sebagai indeks dari array disebut array asosiatif (atau hash).

JavaScript tidak mendukung penggunaan nama untuk array indeks, hanya indeks numerik.

contoh

var orang = [];
orang [0] = "John" ;
orang [1] = "Doe" ;
orang [2] = 46;
var x = person.length; // Person.length mengembalikan 3
var y = orang [0]; // Orang [0] mengembalikan "John"

Coba »

Dalam JavaScript, menggunakan nama obyek sebagai indeks.

Jika Anda menggunakan nama sebagai indeks saat mengakses array, JavaScript akan mendefinisikan array standar objek.

Setelah melakukan operasi ini, metode dan properti dari array tidak akan lagi digunakan, jika tidak maka akan menghasilkan kesalahan:

contoh

var orang = [];
orang [ "firstName"] = " John";
orang [ "lastName"] = " Doe";
orang [ "usia"] = 46 ;
var x = person.length; // person.length kembali 0
var y = orang [0]; // Orang [0] mengembalikan terdefinisi

Coba »

Tentukan elemen array, dan akhirnya tidak dapat menambahkan koma

Kesalahan didefinisikan:

points = [40, 100, 1, 5, 25, 10,];

Definisi yang benar dari jalan:

points = [40, 100, 1, 5, 25, 10];

Mendefinisikan objek, dan akhirnya tidak dapat menambahkan koma

Kesalahan didefinisikan:

websites = {site:"本教程", url:"www.w3big.com", like:460,}

Definisi yang benar dari jalan:

websites = {site:"本教程", url:"www.w3big.com", like:460}

Undefined tidak Null

Dalam JavaScript, null untuk objek, terdefinisi untuk variabel, properti dan metode.

Benda didefinisikan hanya mungkin sebagai null, jika tidak terdefinisi.

Jika kita ingin menguji apakah kehadiran objek, ketika objek tidak didefinisikan belum akan melempar kesalahan.

Penggunaan yang salah:

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

Cara yang benar adalah bahwa kita perlu menggunakan typeof untuk mendeteksi apakah sebuah objek telah didefinisikan:

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

blok lingkup

JavaScript tidak membuat lingkup baru di setiap blok kode, lingkup umum dari setiap blok kode yang global.

Berikut variabel kode i mengembalikan 10 bukan terdefinisi:

contoh

for (var i = 0; i <10; i ++) {
// Beberapa kode
}
kembali i;

Coba »