util.inspect
- Node.js kursu
- Orta seviye
- Ders 91/116
- 5 dk
util.inspect ile nesne incelemeyi öğrenirsin.
util.inspect
util.inspect(nesne) bir nesnenin dize gösterimini datar. console.log ile benzer şekilde biçimlendirir, ama dize olarak döndürür; bu sayede çıktıyı dosyaya yazabilir veya günlüğe ekleyebilirsin.
İçe aktarma: const util = require("node:util");. Örnek: util.inspect({ a: 1, b: [2, 3] }) çıktısı { a: 1, b: [ 2, 3 ] }'dir. Seçenekler (options) nesnesi ikinci parametredir: { depth: 2, colors: true, compact: false }. depth iç içe kaç seviyenin gösterileceğini denetler; null ise sonsuz derinlik. colors renkli çıktı datar (terminal destekliyorsa). compact tek satırda mı yoksa satır satır mı gösterileceğini belirler.
Seçenekler ve çıktı
util.inspect'in seçenekleri çıktıyı esnek biçimlendirir. colors: true terminalde anahtarları yeşil, dizeleri sarı renkle gösterir; false düz metin datar. compact: false her özelliği yeni satıra yazar; true tek satıra sıkıştırır.
Örnek: util.inspect({ a: 1, b: 2 }, { compact: false }) çıktısı {\n a: 1,\n b: 2\n}'dir. breakLength ise satırın kaç karakterden sonra bölüneceğini belirler; Infinity asla bölmez. Bu seçenekler, büyük nesneleri okunaklı tutmak için kullanılır. Konsol çıktısında renk gerekmiyorsa colors: false yazarsın; dosyaya yazarken renk kodları bozulmasın diye bunu yapmalısın. Çıktı her zaman deterministiktir; aynı nesne aynı dizeyi datar.
Uygulama Nesneyi inspect ile yazdır
const util = require("node:util"); ile içe aktar. const obj = { ad: "Ayşe", yas: 30, ilgi: ["müzik", "kitap"] }; tanımla. console.log(util.inspect(obj, { depth: 2, colors: false })) ile yazdır. console.log("İnceleme tamam") ekle.
Başlangıç kodu
// util'i içe aktar
// buraya yaz
// obj nesnesini tanımla
// buraya yaz
// inspect ile yazdır
// buraya yaz
// "İnceleme tamam" yazdır
// buraya yazÖrnek çözüm
const util = require("node:util");
const obj = { ad: "Ayşe", yas: 30, ilgi: ["müzik", "kitap"] };
console.log(util.inspect(obj, { depth: 2, colors: false }));
console.log("İnceleme tamam");Beklenen çıktı
{ ad: 'Ayşe', yas: 30, ilgi: [ 'müzik', 'kitap' ] }
İnceleme tamam
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 depth: 2 neyi denetler?
util.inspect(obj, { depth: 2 })- Kaç nesne yazdırılacağını
- İç içe kaç seviye gösterileceğini Doğru cevap
- Çıktının kaç satır olacağını
- Renk sayısını
Açıklama: depth iç içe seviye sayısını sınırlar.
2 Seçeneği işlevine eşle
| Kavram | Anlamı |
|---|---|
depth |
İç içe seviye sayısı |
colors |
Renkli çıktı |
compact |
Tek satır mı satır satır mı |
breakLength |
Satır bölme eşiği |
3 inspect çağrısını tamamla
const result = util.____(obj, { depth: 2 });
const result = util.inspect(obj, { depth: 2 });
Açıklama: util.inspect nesneyi dizeye çevirir.