Console Utilities API referansı

Sofia Emelianova
Sofia Emelianova

Console Utilities API, yaygın görevleri gerçekleştirmek için bir dizi kolaylık işlevi içerir: DOM öğelerini seçme ve inceleme, nesneleri sorgulama, verileri okunabilir biçimde görüntüleme, profilleyiciyi durdurma ve başlatma, DOM etkinliklerini ve işlev çağrılarını izleme ve daha fazlası.

console.log(), console.error() ve console.* işlevlerinin geri kalanını mı arıyorsunuz? Console API Referansı'na bakın.

$_

$_, en son değerlendirilen ifadenin değerini döndürür.

Aşağıdaki örnekte basit bir ifade (2 + 2) değerlendirilmektedir. Ardından, aynı değeri içeren $_ mülkü değerlendirilir:

$_, en son değerlendirilen ifadedir.

Sonraki örnekte, değerlendirilen ifade başlangıçta bir ad dizisi içeriyor. Dizi uzunluğunu bulmak için $_.length değerlendirildiğinde, $_'da depolanan değer, en son değerlendirilen ifade olan 4 olarak değişir:

Yeni komutlar değerlendirildiğinde $_ değişir.

0 - 4 ABD doları

$0, $1, $2, $3 ve $4 komutları, Öğeler panelinde incelenen son beş DOM öğesine veya Profiller panelinde seçilen son beş JavaScript yığın nesnesine yönelik geçmiş referans olarak çalışır. $0, en son seçilen öğeyi veya JavaScript nesnesini, $1 ise en son seçilen ikinci öğeyi döndürür.

Aşağıdaki örnekte, Öğeler panelinde bir img öğesi seçilidir. Konsol çekmecesinde, $0 değerlendirilmiş ve aynı öğeyi göstermiştir:

0 ABD doları örneği.

Aşağıdaki resimde, aynı sayfada seçili farklı bir öğe gösterilmektedir. $0 artık yeni seçilen öğeyi, $1 ise daha önce seçilen öğeyi döndürür:

1 ABD doları örneği.

$(seçici [, başlangıçNodu])

$(selector), belirtilen CSS seçiciye sahip ilk DOM öğesinin referansını döndürür. Bir bağımsız değişkenle çağrıldığında bu işlev, document.querySelector() işlevinin kısayoludur.

Aşağıdaki örnekte, dokümandaki ilk <img> öğesine referans döndürülür:

$(&#39;img&#39;) örneği.

DOM'da bulmak için döndürülen sonucu sağ tıklayın ve Öğeler panelinde göster'i veya sayfada göstermek için Yaklaştırarak göster'i seçin.

Aşağıdaki örnekte, şu anda seçili öğeye ait bir referans döndürülür ve src mülkü gösterilir:

$(&#39;img&#39;).src örneği.

Bu işlev, öğelerin aranacağı bir "öğe" veya düğüm belirten ikinci bir parametreyi (startNode) de destekler. Bu parametrenin varsayılan değeri document'tür.

Aşağıdaki örnekte, devsite-header-background öğesinin alt öğesi olan ilk img öğesine referans döndürülür ve src özelliği gösterilir:

$(&#39;img&#39;, div).src örneği.

$$(selector [, startNode])

$$(seçici), belirtilen CSS seçiciyle eşleşen bir öğe dizisi döndürür. Bu komut, Array.from(document.querySelectorAll())'ü aramaya eşdeğerdir.

Aşağıdaki örnekte $$() 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);
}

Seçilen düğümden sonra geçerli dokümanda görünen Tüm <code translate=<img> öğeleri:

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

Belgedeki select div öğesinden sonra görünen tüm resimleri seçmek ve kaynaklarını görüntülemek için $() işlevinin kullanıldığı örnek.

$x(path [, startNode])

$x(path), belirtilen XPath ifadesiyle eşleşen bir DOM öğeleri dizisi döndürür.

Örneğin, aşağıdaki ifade sayfadaki tüm <p> öğelerini döndürür:

$x("//p")

XPath seçici kullanımı örneği.

Aşağıdaki örnekte, <a> öğeleri içeren tüm <p> öğeleri döndürülür:

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

Daha karmaşık bir XPath seçicinin kullanıldığı örnek.

Diğer seçici işlevlerine benzer şekilde $x(path), öğe aranacak bir öğeyi veya düğümü belirten isteğe bağlı ikinci bir parametreye (startNode) sahiptir.

startNode ile XPath seçici kullanma örneği.

clear()

clear(), konsolun geçmişini temizler.

clear();

copy(nesne)

copy(object), belirtilen nesnenin dize temsilini panoya kopyalar.

copy($0);

debug(işlev)

Belirtilen işlev çağrıldığında hata ayıklayıcı çağrılır ve Kaynaklar panelinde işlevin içinde durur. Böylece kodda adım adım ilerleyebilir ve kodda hata ayıklayabilirsiniz.

debug(getData);

debug() ile bir işlevin içinde durma.

İşlevde durma işlemini durdurmak için undebug(fn) simgesini veya tüm kesme noktalarını devre dışı bırakmak için kullanıcı arayüzünü kullanın.

Duraklatma noktaları hakkında daha fazla bilgi için Duraklama noktalarıyla kodunuzu duraklatma başlıklı makaleyi inceleyin.

dir(nesne)

dir(object), belirtilen nesnenin tüm özelliklerinin nesne stilinde bir listesini gösterir. Bu yöntem, Console API'nin console.dir() yöntemi için bir kısayoldur.

Aşağıdaki örnekte, document.body değerini doğrudan komut satırında değerlendirme ile aynı öğeyi görüntülemek için dir() kullanma arasındaki fark gösterilmektedir:

document.body;
dir(document.body);

dir() işlevi ile ve bu işlev olmadan document.body öğesini günlüğe kaydetme.

Daha fazla bilgi için Console API'deki console.dir() girişine bakın.

dirxml(nesne)

dirxml(object), Öğeler panelinde görüldüğü gibi belirtilen nesnenin XML temsilini yazdırır. Bu yöntem, console.dirxml() yöntemine eşdeğerdir.

inspect(nesne/işlev)

inspect(object/function), uygun panelde (DOM öğeleri için Öğeler paneli veya JavaScript yığın nesneleri için Profiller paneli) belirtilen öğeyi ya da nesneyi açar ve seçer.

Aşağıdaki örnekte, Nesneler panelinde document.body açılır:

inspect(document.body);

inspect() ile bir öğeyi inceleme.

İncelenecek bir işlev iletirken işlev, dokümanı incelemeniz için Kaynaklar panelinde açar.

getEventListeners(object)

getEventListeners(object), belirtilen nesneye kaydedilen etkinlik işleyicilerini döndürür. Döndürülen değer, kayıtlı her etkinlik türü için bir dizi içeren bir nesnedir (ör. click veya keydown). Her bir dizinin üyeleri, her tür için kayıtlı dinleyiciyi açıklayan nesnelerdir. Örneğin, aşağıdaki örnekte document nesnesine kayıtlı tüm etkinlik dinleyicileri listelenmektedir:

getEventListeners(document);

getEventListeners() işlevinin kullanımıyla elde edilen çıkış.

Belirtilen nesneye birden fazla dinleyici kaydedilmişse dizi her dinleyici için bir üye içerir. Aşağıdaki örnekte, click etkinliği için belge öğesine kayıtlı iki etkinlik dinleyicisi vardır:

Birden fazla dinleyici.

Bu nesnelerin her birini genişleterek özelliklerini keşfedebilirsiniz:

Dinleyici nesnesinin genişletilmiş görünümü.

Daha fazla bilgi için Nesne özelliklerini inceleme başlıklı makaleyi inceleyin.

keys(nesne)

keys(object), belirtilen nesneye ait özelliklerin adlarını içeren bir dizi döndürür. Aynı mülklere ait ilişkili değerleri almak için values() öğesini kullanın.

Örneğin, uygulamanızın aşağıdaki nesneyi tanımladığını varsayalım:

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

player'ün küresel ad alanında tanımlandığı varsayıldığında (basitlik için), Konsol'da keys(player) ve values(player) yazıldığında aşağıdaki sonuç elde edilir:

keys() ve values() yöntemlerinin örneği.

monitor(işlev)

Belirtilen işlev çağrıldığında, çağrıldığı sırada işleve iletilen bağımsız değişkenlerle birlikte işlev adını belirten bir mesaj konsola kaydedilir.

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

monitor() yöntemi örneği.

İzlemeyi durdurmak için unmonitor(function) simgesini kullanın.

monitorEvents(object [, events])

Belirtilen nesne üzerinde belirtilen etkinliklerden biri gerçekleştiğinde etkinlik nesnesi konsola kaydedilir. İzlenecek tek bir etkinlik, bir etkinlik dizisi veya önceden tanımlanmış bir etkinlik koleksiyonuyla eşlenen genel etkinlik "türlerinden" birini belirtebilirsiniz. Aşağıdaki örneklere bakın.

Aşağıdaki kod, pencere nesnesinde gerçekleşen tüm yeniden boyutlandırma etkinliklerini izler.

monitorEvents(window, "resize");

Pencere yeniden boyutlandırma etkinliklerini izleme.

Aşağıda, pencere nesnesinde hem "yeniden boyutlandır" hem de "kaydırma" etkinliklerini izleyen bir dizi tanımlanmaktadır:

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

Ayrıca, önceden tanımlanmış etkinlik kümeleriyle eşleşen dizelerden oluşan mevcut etkinlik "türlerinden" birini de belirtebilirsiniz. Aşağıdaki tabloda, kullanılabilen etkinlik türleri ve bunlarla ilişkili etkinlik eşlemeleri listelenmiştir:

Etkinlik türü ve eşleştirilen karşılık gelen etkinlikler
fare"mousedown", "mouseup", "click", "dblclick", "mousemove", "mouseover", "mouseout", "mousewheel"
anahtar"keydown", "keyup", "keypress", "textInput"
dokun"touchstart", "touchmove", "touchend", "touchcancel"
kontrol"resize", "scroll", "zoom", "focus", "blur", "select", "change", "submit", "reset"

Örneğin, aşağıdaki ifadede "anahtar" etkinlik türü kullanılarak, Öğeler panelinde seçili olan bir giriş metin alanındaki tüm ilgili önemli etkinlikler elde edilir.

monitorEvents($0, "key");

Metin alanına karakter yazdıktan sonra örnek çıkış aşağıda verilmiştir:

Önemli etkinlikleri izleme.

İzlemeyi durdurmak için unmonitorEvents(object[, events]) simgesini kullanın.

profile([ad]) ve profileEnd([ad])

profile(), isteğe bağlı bir adla JavaScript CPU profili oluşturma oturumu başlatır. profileEnd() profili tamamlar ve sonuçları Performans > Ana kanalda gösterir.

Profil oluşturmaya başlamak için:

profile("Profile 1")

Profil oluşturmayı durdurmak ve sonuçları Performans > Ana kanalında görmek için:

profileEnd("Profile 1")

Performans > Ana kanalında sonuç:

Performans ana kanalındaki 1. profil.

Profiller iç içe yerleştirilebilir. Örneğin, aşağıdakiler herhangi bir sırada kullanılabilir:

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

queryObjects(Constructor)

Belirtilen kurucu işleviyle oluşturulan bir nesne dizisi döndürmek için konsoldan queryObjects(Constructor) işlevini çağırın. Örneğin:

  • queryObjects(Promise). Promise öğesinin tüm örneklerini döndürür.
  • queryObjects(HTMLElement). Tüm HTML öğelerini döndürür.
  • queryObjects(foo). Burada foo bir sınıf adıdır. new foo() aracılığıyla oluşturulan tüm nesneleri döndürür.

queryObjects()'ün kapsamı, konsolda şu anda seçili olan yürütme bağlamıdır.

table(veriler [, sütunlar])

İsteğe bağlı sütun başlıklarıyla bir veri nesnesi göndererek nesne verilerini tablo biçiminde günlüğe kaydedin. Bu, console.table() için bir kısayoldur.

Örneğin, konsolda bir tablo kullanarak adların listesini görüntülemek için şunları yapmanız gerekir:

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

table() yöntemi örneği.

undebug(function)

undebug(function), belirtilen işlevin hata ayıklama işlemini durdurur. Böylece işlev çağrıldığında hata ayıklayıcı artık çağrılmaz. Bu, debug(fn) ile birlikte kullanılır.

undebug(getData);

unmonitor(işlev)

unmonitor(function), belirtilen işlevin izlenmesini durdurur. Bu, monitor(fn) ile birlikte kullanılır.

unmonitor(getData);

unmonitorEvents(object [, events])

unmonitorEvents(object[, events]), belirtilen nesne ve etkinlikler için etkinliklerin izlenmesini durdurur. Örneğin, aşağıdaki kod, pencere nesnesinde tüm etkinlik izlemeyi durdurur:

unmonitorEvents(window);

Ayrıca, bir nesnenin belirli etkinliklerini seçerek izlemeyi durdurabilirsiniz. Örneğin, aşağıdaki kod şu anda seçili öğedeki tüm fare etkinliklerini izlemeye başlar ve ardından "mousemove" etkinliklerini izlemeyi durdurur (belki de konsol çıkışındaki gürültüyü azaltmak için):

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

values(nesne)

values(object), belirtilen nesneye ait tüm özelliklerin değerlerini içeren bir dizi döndürür.

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

values(player);

values(player) işlevinin sonucu.