توضیحات جلسه عالی بود از مباحث لذت بردم و چند نکته رو خواستم به صورت تکمیلی اینجا ذکر کنم :
اول ( در خصوص iterable کردن object ) :
به نظرم با استفاده از generator functionها بهتر و راحتتر باشه :
let obj = { username: "MohammadShokri", password: "4sfd654f65sd4f6s4df", *[Symbol.iterator]() { yield this.username; yield this.password; }, }; for (let i of obj) { console.log(i); }
دوم (استفاده از عملگر ?? به جای || ) :
که داخل nullish coalescing operator مقادیر رو به جای truth بودن بر اساس تعریف شدن (null and undefiend) بودن بررسی میکنه :
let a = 0; a || "Anonymous" // Anonymous a ?? "Anonymous" // 0
سوم (استفاده از rest parms به جای arguments ) :
برای زمانی که نمیدونیم تعداد ورودی چندتا میتونه باشه :
function test (...params) { //code goes here... }
و چهارم ( استفاده کردن از Destructuring Assignment برای زمانی که نمیخوایم ترتیب وارد شدن پارامترها رعایت شن)
function test({ a, b, c = 6 }) { return a + b + c; } console.log(test({ b: 7, a: 3 })); // 16 console.log(test({ c: 7, a: 2, b: 9 })); //18
با تشکر از جناب دادخواه ?♂️