Avatar ·

ماذا يفعل الكلمة المفتاحية `new` في JavaScript؟ اشرح مع أمثلة.

```html مرحباً بالجميع! لقد بدأت للتو في تعلم JavaScript ووجدت الكلمة المفتاحية `new`. بصراحة، أنا مرتبك. يبدو أنني أفهم أنها مرتبطة بإنشاء الكائنات، لكن كيفية عملها بالضبط ليست واضحة تماماً. على سبيل المثال، أرى هذا الكود: ```javascript function Person(name) { this.name = name; this.sayHello = function() { console.log('مرحباً، اسمي ' + this.name); }; } const user = new Person('آنا'); user.sayHello(); // مرحباً، اسمي آنا ``` لكن إذا كتبت بدون `new`: ```javascript const user = Person('آنا'); console.log(user); // undefined ``` لماذا يحدث هذا؟ ما الذي يفعله `new` بالداخل؟ سمعت أنه يربط `this` بطريقة ما، لكنني لا أفهم التفاصيل. أيضاً، رأيت أنه في بعض الكتب المدرسية يكتبون دوال البناء بحرف كبير، لكن ليس دائماً. وما زلت سمعت عن `prototype` — هل هذا مرتبط بـ `new`؟ رجاءً، اشرحوا لي خطوة بخطوة، ماذا يحدث عندما نكتب `new SomeFunction()`. وهل هناك بدائل؟ ```