Skip to content

Commit a075dbb

Browse files
authored
Translate a part of article
1 parent 93e5fc8 commit a075dbb

1 file changed

Lines changed: 8 additions & 8 deletions

File tree

  • 1-js/07-object-properties/01-property-descriptors

1-js/07-object-properties/01-property-descriptors/article.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
در این فصل ما درباره گزینه‌های اضافی پیکربندی مطالعه خواهیم کرد و در فصل بعد خواهیم دید که چگونه به طور پنهانی آن‌ها را به تابع‌های گیرنده/تنظیم‌کننده (getter/setter functions) تبدیل کنیم.
99

10-
## پرچم‌های ویژگی
10+
## پرچم‌های ویژگی (Property flags)
1111

1212
ویژگی‌های شیء، در کنار **`value`** دارای سه صفت (attribute) هم هستند (اصطلاحا «پرچم» یا flag هم می‌گویند):
1313

@@ -144,11 +144,11 @@ alert(user.name); // John
144144
user.name = "Pete"; // Error
145145
```
146146

147-
## Non-enumerable
147+
## غیر قابل شمارش
148148

149-
Now let's add a custom `toString` to `user`.
149+
حالا بیایید یک `toString` سفارشی به `user` اضافه کنیم.
150150

151-
Normally, a built-in `toString` for objects is non-enumerable, it does not show up in `for..in`. But if we add a `toString` of our own, then by default it shows up in `for..in`, like this:
151+
طبیعتا، یک `toString` درون‌ساخت برای شیءها غیر قابل شمارش است و در `for..in` ظاهر نمی‌شود. اما اگر ما `toString` خودمان را اضافه کنیم، سپس به طور پیش‌فرض درون `for..in` نمایش داده می‌شود، مثلا اینگونه:
152152

153153
```js run
154154
let user = {
@@ -158,11 +158,11 @@ let user = {
158158
}
159159
};
160160

161-
// By default, both our properties are listed:
161+
// :به طور پیش‌فرض هر دو ویژگی ما لیست می‌شوند
162162
for (let key in user) alert(key); // name, toString
163163
```
164164

165-
If we don't like it, then we can set `enumerable:false`. Then it won't appear in a `for..in` loop, just like the built-in one:
165+
اگر ما نخواهیم که اینطور باشد، می‌توانیم `enumerable:false` را تنظیم کنیم. سپس این ویژگی درون حلقه `for..in` ظاهر نمی‌شود، درست مانند متد درون‌ساخت آن:
166166

167167
```js run
168168
let user = {
@@ -179,12 +179,12 @@ Object.defineProperty(user, "toString", {
179179
});
180180

181181
*!*
182-
// Now our toString disappears:
182+
// :ما ظاهر نمی‌شود toString حالا
183183
*/!*
184184
for (let key in user) alert(key); // name
185185
```
186186

187-
Non-enumerable properties are also excluded from `Object.keys`:
187+
ویژگی‌های غیر قابل شمارش از `Object.keys` هم حذف می‌شوند:
188188

189189
```js
190190
alert(Object.keys(user)); // name

0 commit comments

Comments
 (0)