ক্রোমে console
বস্তুটি দুটি পদ্ধতি নির্ধারণ করে যা একই জিনিসটি মনে করে:
console.log(...)
console.dir(...)
আমি অনলাইনে কোথাও পড়েছি dir
লগ ইন করার আগে অবজেক্টের একটি অনুলিপি নিয়ে যায়, যেখানে log
কনসোলের রেফারেন্সটি কেবল পাস করে, অর্থাত আপনি লগ করা অবজেক্টটি পরিদর্শন করতে যাওয়ার সময় এটি পরিবর্তিত হতে পারে। তবে কিছু প্রাথমিক পরীক্ষার পরামর্শ দেয় যে কোনও পার্থক্য নেই এবং তারা উভয় লগইন হওয়ার চেয়ে বিভিন্ন রাজ্যে সম্ভাব্যভাবে বস্তু প্রদর্শন করে ভুগছে।
আমি কী বলতে চাইছি তা দেখার জন্য এটি Chrome কনসোলে ( Ctrl+ Shift+ J) এ চেষ্টা করুন :
> o = { foo: 1 }
> console.log(o)
> o.foo = 2
এখন, [Object]
লগ স্টেটমেন্টের নীচে প্রসারিত করুন এবং লক্ষ্য করুন যে এটি foo
2 এর মান দিয়ে দেখায় এটি একই সত্য যদি আপনি ব্যবহার করে পরীক্ষার পুনরাবৃত্তি করেনdir
পরিবর্তেlog
।
আমার প্রশ্ন, কেন এই দুটি আপাতদৃষ্টিতে অভিন্ন ফাংশন বিদ্যমান console
?
console.dir
পরিবর্তন হয় না, তাই এটি একটি বড় পার্থক্য করে।
console.log([1,2])
এবংconsole.dir([1,2])
আপনি পার্থক্যটি দেখতে পাবেন।