من میدانم که هیچ نمیدانم.
بررسی پروتوتایپ (Prototype) در جاوااسکریپت
وقتی آبجکتها توی جاوااسکریپت به وجود میان، یک سری پراپرتیها و متدها رو از یک آبجکت به اسم prototype به ارث میبرن. آبجکت prototype مثل یک طرح و الگو هست برای بقیه آبجکتها.
برای مثال همه رشتهها چند متد پیشفرض مثل ()split() ،replace و یک پراپرتی به اسم length دارن. وجود این پراپرتیها و متدها به این دلیل هست که هنگام ساخته شدن یک رشته، متدها و پراپرتیها از آبجکت String.prototype به ارث برده میشن. بنابراین اگه ما آبجکت String.prototype رو ویرایش کنیم و یا به اون متد و پراپرتی اضافه کنیم، این متدها و پراپرتیها توی همهی رشتههای دیگه وجود خواهد داشت.
توی کد زیر من یک متد به prototype آبجکت String اضافه کردم به اسم limit. این متد توی همهی رشتهها وجود خواهد داشت:
String.prototype.limit = function (length) {
return this.length > length ? this.substring(0, length) + "..." : this;
}
و به صورت زیر ازش استفاده میکنیم:
var str = "JavaScript is often described as a prototype-based language"
console.log(str.limit(20)); // JavaScript is often ...
منبع:
https://www.w3schools.com/js/js_object_prototypes.asp
https://www.geeksforgeeks.org/prototype-in-javascript/
https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Objects/Object_prototypes
https://stackoverflow.com/questions/7463658/how-to-trim-a-string-to-n-chars-in-javascript
https://dev.to/macmacky/70-javascript-interview-questions-5gfi
مطلبی دیگر از این انتشارات
ادعای جدید اوکراین؛ اوکراین کیفپول ارزدیجیتال مرتبط با کمکهای مالی روسیه را مصادره کرد!
مطلبی دیگر از این انتشارات
نقشه راه تبدیل شدن به توسعه دهنده اپلیکیشن های غیرمتمرکز (dapp) در سال 2022
مطلبی دیگر از این انتشارات
هیاهوی ادغام اتریوم را به بالای سطح ۲۰۰۰ دلاری رساند!