CodeBlanks Logo Icon CodeBlanks

util.inspect

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

index.js
// 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

index.js
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?

index.js
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

Soru
const result = util.____(obj, { depth: 2 });
Cevap
const result = util.inspect(obj, { depth: 2 });

Açıklama: util.inspect nesneyi dizeye çevirir.

Orta seviye bölümündeki tüm dersler