Skip to content

Commit 27b4b2f

Browse files
committed
Merge pull request BonsaiDen#117 from oozcitak/tr
[tr] branch updates
2 parents 666edda + 919b581 commit 27b4b2f

File tree

3 files changed

+87
-2
lines changed

3 files changed

+87
-2
lines changed

doc/tr/core/delete.md

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
## `delete` Operatörü
2+
3+
Kısacası, genel kapsamda tanımlanmış değişkenleri, fonksiyonları ve `DontDelete`
4+
niteliğine sahip bazı başka şeyleri silmek *imkansızdır*.
5+
6+
### Genel kapsam ve fonksiyon kapsamı
7+
8+
Bir değişken veya fonksiyon genel kapsamda veya
9+
[fonksiyon kapsamında](#function.scopes) tanımlandığında aktivasyon nesnesinin
10+
veya global nesnenin bir özelliği olacaktır. Bu tür özelliklerin bir takım
11+
nitelikleri vardır ve bunlardan biri `DontDelete` niteliğidir. Genel kapsamda ve
12+
fonksiyon kapsamında tanımlanan değişkenler ve fonksiyonlar yaratıldıklarında
13+
her zaman `DontDelete` niteliğine sahip olacaktır, ve bu nedenle silinemezler.
14+
15+
// genel kapsam değişkeni:
16+
var a = 1; // DontDelete niteliğine sahip
17+
delete a; // false
18+
a; // 1
19+
20+
// normal bir fonksiyon:
21+
function f() {} // DontDelete niteliğine sahip
22+
delete f; // false
23+
typeof f; // "function"
24+
25+
// başka bir değişkene atamak işe yaramaz:
26+
f = 1;
27+
delete f; // false
28+
f; // 1
29+
30+
### Açıkça tanımlanan özellikler
31+
32+
Açıkça tanımlanan özellikleri silmek mümkündür.
33+
34+
// tanımlanan özellik:
35+
var obj = {x: 1};
36+
obj.y = 2;
37+
delete obj.x; // true
38+
delete obj.y; // true
39+
obj.x; // undefined
40+
obj.y; // undefined
41+
42+
Yukarıdaki örnekte `obj.x` ve `obj.y` silinebilir çünkü `DontDelete` niteliğine
43+
sahip değillerdir. Aynı nedenle aşağıdakini yapmak da mümkündür:
44+
45+
// IE hariç çalışır:
46+
var GLOBAL_OBJECT = this;
47+
GLOBAL_OBJECT.a = 1;
48+
a === GLOBAL_OBJECT.a; // true - genel değişken
49+
delete GLOBAL_OBJECT.a; // true
50+
GLOBAL_OBJECT.a; // undefined
51+
52+
Burada `a`'yı silmek için bir hile kullanıyoruz. [`this`](#function.this)
53+
burada genel nesneye işaret ediyor ve `a` değişkenini onun özelliği olarak
54+
atıyoruz, ve böylece onu silebiliyoruz.
55+
56+
IE (en azından 6-8) bazı hatalar içerdiğinden yukarıdaki örnek çalışmayacaktır.
57+
58+
### Fonksiyon argümanları ve önceden tanımlı özellikler
59+
60+
Fonksiyonlara verilen argümanlar, [`arguments` nesnesi](#function.arguments)
61+
ve önceden tanımlı özellikler de `DontDelete` niteliğine sahiptir.
62+
63+
// fonksiyon argümanları ve özellikler:
64+
(function (x) {
65+
delete arguments; // false
66+
typeof arguments; // "object"
67+
68+
delete x; // false
69+
x; // 1
70+
71+
function f(){}
72+
delete f.length; // false
73+
typeof f.length; // "number"
74+
})(1);
75+
76+
### *Host* nesneler
77+
78+
`Host` nesneler üzerinde kullanıldığında `delete` operatörünün davranışı belirsiz
79+
olabilir. Standarda göre `host` nesneler istedikleri davranışı uygulayabilirler.
80+
81+
### Sonuç
82+
83+
`delete` operatörünün davranışı genellikle belirsizdir ve güvenle kullanılabileceği
84+
tek yer sıradanan nesneler üzerinde açıkça tanımlanan özelliklerdir.

doc/tr/function/scopes.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ kapsamı **bulunmaz**; bu nedenle, dilde sadece *fonksiyon kapsamı* mevcuttur.
1414
> kullanıldığında `{...}` notasyonu bir nesne değişmezi olarak **değil**
1515
> blok ifade olarak değerlendirilir. Bu özellik
1616
> [otomatik noktalı virgül ilavesi](#core.semicolon) ile birleştiğinde fark
17-
> edilmesizor hatalara neden olabilir.
17+
> edilmesi zor hatalara neden olabilir.
1818
1919
JavaScript'te isim uzayları kavramı da bulunmaz, tanımlanan herşey
2020
*genel olarak paylaşılmış* tek bir isim uzayının içindedir.

doc/tr/index.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,8 @@
5454
"articles": [
5555
"eval",
5656
"undefined",
57-
"semicolon"
57+
"semicolon",
58+
"delete"
5859
]
5960
},
6061
{

0 commit comments

Comments
 (0)