Referensi Console Utilities API

Sofia Emelianova
Sofia Emelianova

Console Utilities API berisi kumpulan fungsi praktis untuk melakukan tugas umum: memilih dan memeriksa elemen DOM, membuat kueri objek, menampilkan data dalam format yang dapat dibaca, menghentikan dan memulai profiler, memantau peristiwa DOM dan panggilan fungsi, dan lainnya.

Mencari console.log(), console.error(), dan fungsi console.* lainnya? Lihat Referensi Console API.

$_

$_ menampilkan nilai ekspresi yang terakhir dievaluasi.

Dalam contoh berikut, ekspresi sederhana (2 + 2) dievaluasi. Properti $_ kemudian dievaluasi, yang berisi nilai yang sama:

$_ adalah ekspresi yang terakhir dievaluasi.

Dalam contoh berikutnya, ekspresi yang dievaluasi awalnya berisi array nama. Mengevaluasi $_.length untuk menemukan panjang array, nilai yang disimpan di $_ berubah menjadi ekspresi terbaru yang dievaluasi, 4:

$_ berubah saat perintah baru dievaluasi.

$0 - $4

Perintah $0, $1, $2, $3, dan $4 berfungsi sebagai referensi historis ke lima elemen DOM terakhir yang diperiksa dalam panel Elements atau lima objek heap JavaScript terakhir yang dipilih di panel Profiles. $0 menampilkan elemen atau objek JavaScript yang terakhir dipilih, $1 menampilkan elemen kedua yang terakhir dipilih, dan seterusnya.

Dalam contoh berikut, elemen img dipilih di panel Elements. Di panel samping Console, $0 telah dievaluasi dan menampilkan elemen yang sama:

Contoh $0.

Gambar di bawah ini menunjukkan elemen berbeda yang dipilih pada halaman yang sama. $0 kini merujuk ke elemen yang baru dipilih, sedangkan $1 menampilkan elemen yang dipilih sebelumnya:

Contoh $1.

$(selector [, startNode])

$(selector) menampilkan referensi ke elemen DOM pertama dengan pemilih CSS yang ditentukan. Saat dipanggil dengan satu argumen, fungsi ini adalah pintasan untuk fungsi document.querySelector().

Contoh berikut menampilkan referensi ke elemen <img> pertama dalam dokumen:

Contoh $(&#39;img&#39;).

Klik kanan pada hasil yang ditampilkan, lalu pilih Reveal in Elements Panel untuk menemukannya di DOM, atau Scroll in to View untuk menampilkannya di halaman.

Contoh berikut menampilkan referensi ke elemen yang saat ini dipilih dan menampilkan properti src-nya:

Contoh $(&#39;img&#39;).src.

Fungsi ini juga mendukung parameter kedua, startNode, yang menentukan 'elemen' atau Node tempat menelusuri elemen. Nilai default parameter ini adalah document.

Contoh berikut menampilkan referensi ke elemen img pertama yang merupakan turunan dari devsite-header-background, dan menampilkan properti src-nya:

Contoh $(&#39;img&#39;, div).src.

$$(selector [, startNode])

$$(pemilih) menampilkan array elemen yang cocok dengan pemilih CSS yang diberikan. Perintah ini setara dengan memanggil Array.from(document.querySelectorAll()).

Contoh berikut menggunakan $$() to create an array of all <img> elements in the current document and displays the value of each element's src property:

let images = $$('img');
for (let each of images) {
  console.log(each.src);
}

Contoh penggunaan<!-- notranslate l10n-placeholder: l10n-placeholder3 -->()</code> untuk membuat array dari semua <code translate= elemen <img> yang muncul dalam dokumen saat ini setelah Node yang dipilih:

let images = $$('img', document.querySelector('.devsite-header-background'));
for (let each of images) {
  console.log(each.src);
}

Contoh penggunaan $() untuk memilih semua gambar yang muncul setelah elemen div pilih dalam dokumen dan menampilkan sumbernya.

$x(jalur [, startNode])

$x(path) menampilkan array elemen DOM yang cocok dengan ekspresi XPath yang diberikan.

Misalnya, kode berikut menampilkan semua elemen <p> di halaman:

$x("//p")

Contoh penggunaan pemilih XPath.

Contoh berikut menampilkan semua elemen <p> yang berisi elemen <a>:

$x("//p[a]")

Contoh penggunaan pemilih XPath yang lebih rumit.

Serupa dengan fungsi pemilih lainnya, $x(path) memiliki parameter kedua opsional, startNode, yang menentukan elemen atau Node tempat elemen akan ditelusuri.

Contoh penggunaan pemilih XPath dengan startNode.

clear()

clear() akan menghapus historinya di konsol.

clear();

copy(object)

copy(object) menyalin representasi string objek yang ditentukan ke papan klip.

copy($0);

debug(function)

Saat fungsi yang ditentukan dipanggil, debugger akan dipanggil dan berhenti sebentar di dalam fungsi pada panel Sources sehingga memungkinkan penyusuran kode dan melakukan debug.

debug(getData);

Membuka bagian dalam fungsi dengan debug().

Gunakan undebug(fn) untuk menghentikan gangguan pada fungsi, atau gunakan UI untuk menonaktifkan semua titik henti sementara.

Untuk informasi selengkapnya tentang titik henti sementara, lihat Menjeda Kode dengan Titik Henti Sementara.

dir(object)

dir(object) menampilkan daftar bergaya objek dari semua properti objek yang ditentukan. Metode ini adalah pintasan untuk metode console.dir() Console API.

Contoh berikut menunjukkan perbedaan antara mengevaluasi document.body secara langsung di baris perintah, dan menggunakan dir() untuk menampilkan elemen yang sama:

document.body;
dir(document.body);

Mencatat log document.body dengan dan tanpa fungsi dir().

Untuk informasi selengkapnya, lihat entri console.dir() di Console API.

dirxml(object)

dirxml(object) mencetak representasi XML objek yang ditentukan, seperti yang terlihat di panel Elements. Metode ini setara dengan metode console.dirxml().

inspect(object/function)

inspect(object/function) membuka dan memilih elemen atau objek yang ditentukan di panel yang sesuai: baik di panel Elements untuk elemen DOM maupun panel Profil untuk objek heap JavaScript.

Contoh berikut membuka document.body di panel Elements:

inspect(document.body);

Memeriksa elemen dengan inspect().

Saat meneruskan fungsi untuk diperiksa, fungsi akan membuka dokumen di panel Sumber untuk Anda periksa.

getEventListeners(object)

getEventListeners(object) menampilkan pemroses peristiwa yang terdaftar pada objek yang ditentukan. Nilai yang ditampilkan adalah objek yang berisi array untuk setiap jenis peristiwa yang terdaftar (misalnya, click atau keydown). Anggota setiap array adalah objek yang mendeskripsikan pemroses yang terdaftar untuk setiap jenis. Misalnya, kode berikut mencantumkan semua pemroses peristiwa yang terdaftar di objek dokumen:

getEventListeners(document);

Output penggunaan getEventListeners().

Jika lebih dari satu pemroses didaftarkan pada objek yang ditentukan, array akan berisi anggota untuk setiap pemroses. Dalam contoh berikut, ada dua pemroses peristiwa yang terdaftar di elemen dokumen untuk peristiwa click:

Beberapa pemroses.

Anda dapat meluaskan lebih jauh setiap objek ini untuk mempelajari propertinya:

Tampilan yang diperluas dari objek pemroses.

Untuk mengetahui informasi selengkapnya, lihat Memeriksa properti objek.

keys(object)

keys(object) menampilkan array yang berisi nama properti yang dimiliki oleh objek yang ditentukan. Untuk mendapatkan nilai terkait dari properti yang sama, gunakan values().

Misalnya, anggaplah aplikasi Anda mendefinisikan objek berikut:

let player = {
    "name": "Parzival",
    "number": 1,
    "state": "ready",
    "easterEggs": 3
};

Dengan asumsi player ditentukan dalam namespace global (agar lebih praktis), mengetik keys(player) dan values(player) di Console akan menghasilkan hal berikut:

Contoh metode keys() dan values().

monitor(fungsi)

Saat fungsi yang ditentukan dipanggil, pesan akan dicatat ke dalam log di konsol yang menunjukkan nama fungsi beserta argumen yang diteruskan ke fungsi saat dipanggil.

function sum(x, y) {
  return x + y;
}
monitor(sum);

Contoh metode monitor().

Gunakan unmonitor(function) untuk menghentikan pemantauan.

monitorEvents(object [, events])

Saat salah satu peristiwa yang ditentukan terjadi pada objek yang ditentukan, objek Peristiwa akan dicatat ke konsol. Anda dapat menentukan satu peristiwa yang akan dipantau, array peristiwa, atau salah satu "jenis" peristiwa umum yang dipetakan ke kumpulan peristiwa yang telah ditentukan sebelumnya. Lihat contohnya di bawah.

Berikut ini memantau semua peristiwa ubah ukuran pada objek jendela.

monitorEvents(window, "resize");

Memantau peristiwa resize jendela.

Berikut ini menentukan array untuk memantau peristiwa "resize" dan "scroll" pada objek jendela:

monitorEvents(window, ["resize", "scroll"])

Anda juga dapat menentukan salah satu "jenis" peristiwa yang tersedia, string yang dipetakan ke kumpulan peristiwa yang telah ditetapkan sebelumnya. Tabel di bawah ini mencantumkan jenis peristiwa yang tersedia dan pemetaan peristiwa terkaitnya:

Jenis peristiwa & Peristiwa terkait yang dipetakan
tikus"mousedown", "mouseup", "klik", "dblclick", "mousemove", "mouseover", "mouseout", "mousewheel"
kunci"keydown", "keyup", "keypress", "textInput"
sentuh"touchstart", "touchmove", "touchend", "touchcancel"
kontrol"resize", "scroll", "zoom", "focus", "blur", "select", "change", "submit", "reset"

Misalnya, kode berikut menggunakan jenis peristiwa "key" dari semua peristiwa key yang sesuai pada kolom teks input yang saat ini dipilih di panel Elements.

monitorEvents($0, "key");

Berikut adalah contoh output setelah mengetik karakter dalam kolom teks:

Memantau peristiwa utama.

Gunakan unmonitorEvents(object[, events]) untuk menghentikan pemantauan.

profile([name]) dan profileEnd([name])

profile() memulai sesi pembuatan profil CPU JavaScript dengan nama opsional. profileEnd() menyelesaikan profil dan menampilkan hasilnya di jalur Performa > Utama.

Untuk memulai pembuatan profil:

profile("Profile 1")

Untuk menghentikan pembuatan profil dan melihat hasilnya di jalur Performa > Utama:

profileEnd("Profile 1")

Hasil di jalur Performa > Utama:

Profil 1 di Jalur utama Performa.

Profil juga dapat disusun bertingkat. Misalnya, kode ini akan berfungsi dalam urutan apa pun:

profile('A');
profile('B');
profileEnd('A');
profileEnd('B');

queryObjects(Constructor)

Panggil queryObjects(Constructor) dari konsol untuk menampilkan array objek yang dibuat dengan konstruktor yang ditentukan. Contoh:

  • queryObjects(Promise). Menampilkan semua instance Promise.
  • queryObjects(HTMLElement). Menampilkan semua elemen HTML.
  • queryObjects(foo), dengan foo adalah nama class. Menampilkan semua objek yang dibuat instance-nya melalui new foo().

Cakupan queryObjects() adalah konteks eksekusi yang saat ini dipilih di konsol.

table(data [, columns])

Me-log data objek dengan pemformatan tabel dengan meneruskan objek data dalam heading kolom opsional. Ini adalah pintasan untuk console.table().

Misalnya, untuk menampilkan daftar nama menggunakan tabel di konsol, Anda akan melakukan:

let names = [
  { firstName: "John", lastName: "Smith" },
  { firstName: "Jane", lastName: "Doe" },
];
table(names);

Contoh metode table().

undebug(fungsi)

undebug(function) menghentikan proses debug atas fungsi yang ditentukan sehingga saat fungsi tersebut dipanggil, debugger tidak lagi dipanggil. Ini digunakan bersama dengan debug(fn).

undebug(getData);

unmonitor(function)

unmonitor(function) menghentikan pemantauan fungsi yang ditentukan. Metode ini digunakan bersama monitor(fn).

unmonitor(getData);

unmonitorEvents(object [, events])

unmonitorEvents(object[, events]) berhenti memantau peristiwa untuk objek dan peristiwa yang ditentukan. Misalnya, yang berikut ini akan menghentikan semua pemantauan peristiwa pada objek window:

unmonitorEvents(window);

Anda juga dapat secara selektif menghentikan pemantauan peristiwa tertentu pada sebuah objek. Misalnya, kode berikut mulai memantau semua peristiwa mouse pada elemen yang saat ini dipilih, lalu berhenti memantau peristiwa "mousemove" (mungkin untuk mengurangi derau di output konsol):

monitorEvents($0, "mouse");
unmonitorEvents($0, "mousemove");

values(object)

values(object) menampilkan array yang berisi nilai semua properti yang dimiliki oleh objek yang ditentukan.

let player = {
    "name": "Parzival",
    "number": 1,
    "state": "ready",
    "easterEggs": 3
};

values(player);

Hasil nilai(pemain).