Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Merge pull request #117 from oozcitak/tr

[tr] branch updates
  • Loading branch information...
commit 27b4b2fa1837d6cd07e8b814ab142d9df4342cad 2 parents 666edda + 919b581
@BonsaiDen authored
View
84 doc/tr/core/delete.md
@@ -0,0 +1,84 @@
+## `delete` Operatörü
+
+Kısacası, genel kapsamda tanımlanmış değişkenleri, fonksiyonları ve `DontDelete`
+niteliğine sahip bazı başka şeyleri silmek *imkansızdır*.
+
+### Genel kapsam ve fonksiyon kapsamı
+
+Bir değişken veya fonksiyon genel kapsamda veya
+[fonksiyon kapsamında](#function.scopes) tanımlandığında aktivasyon nesnesinin
+veya global nesnenin bir özelliği olacaktır. Bu tür özelliklerin bir takım
+nitelikleri vardır ve bunlardan biri `DontDelete` niteliğidir. Genel kapsamda ve
+fonksiyon kapsamında tanımlanan değişkenler ve fonksiyonlar yaratıldıklarında
+her zaman `DontDelete` niteliğine sahip olacaktır, ve bu nedenle silinemezler.
+
+ // genel kapsam değişkeni:
+ var a = 1; // DontDelete niteliğine sahip
+ delete a; // false
+ a; // 1
+
+ // normal bir fonksiyon:
+ function f() {} // DontDelete niteliğine sahip
+ delete f; // false
+ typeof f; // "function"
+
+ // başka bir değişkene atamak işe yaramaz:
+ f = 1;
+ delete f; // false
+ f; // 1
+
+### Açıkça tanımlanan özellikler
+
+Açıkça tanımlanan özellikleri silmek mümkündür.
+
+ // tanımlanan özellik:
+ var obj = {x: 1};
+ obj.y = 2;
+ delete obj.x; // true
+ delete obj.y; // true
+ obj.x; // undefined
+ obj.y; // undefined
+
+Yukarıdaki örnekte `obj.x` ve `obj.y` silinebilir çünkü `DontDelete` niteliğine
+sahip değillerdir. Aynı nedenle aşağıdakini yapmak da mümkündür:
+
+ // IE hariç çalışır:
+ var GLOBAL_OBJECT = this;
+ GLOBAL_OBJECT.a = 1;
+ a === GLOBAL_OBJECT.a; // true - genel değişken
+ delete GLOBAL_OBJECT.a; // true
+ GLOBAL_OBJECT.a; // undefined
+
+Burada `a`'yı silmek için bir hile kullanıyoruz. [`this`](#function.this)
+burada genel nesneye işaret ediyor ve `a` değişkenini onun özelliği olarak
+atıyoruz, ve böylece onu silebiliyoruz.
+
+IE (en azından 6-8) bazı hatalar içerdiğinden yukarıdaki örnek çalışmayacaktır.
+
+### Fonksiyon argümanları ve önceden tanımlı özellikler
+
+Fonksiyonlara verilen argümanlar, [`arguments` nesnesi](#function.arguments)
+ve önceden tanımlı özellikler de `DontDelete` niteliğine sahiptir.
+
+ // fonksiyon argümanları ve özellikler:
+ (function (x) {
+ delete arguments; // false
+ typeof arguments; // "object"
+
+ delete x; // false
+ x; // 1
+
+ function f(){}
+ delete f.length; // false
+ typeof f.length; // "number"
+ })(1);
+
+### *Host* nesneler
+
+`Host` nesneler üzerinde kullanıldığında `delete` operatörünün davranışı belirsiz
+olabilir. Standarda göre `host` nesneler istedikleri davranışı uygulayabilirler.
+
+### Sonuç
+
+`delete` operatörünün davranışı genellikle belirsizdir ve güvenle kullanılabileceği
+tek yer sıradanan nesneler üzerinde açıkça tanımlanan özelliklerdir.
View
2  doc/tr/function/scopes.md
@@ -14,7 +14,7 @@ kapsamı **bulunmaz**; bu nedenle, dilde sadece *fonksiyon kapsamı* mevcuttur.
> kullanıldığında `{...}` notasyonu bir nesne değişmezi olarak **değil**
> blok ifade olarak değerlendirilir. Bu özellik
> [otomatik noktalı virgül ilavesi](#core.semicolon) ile birleştiğinde fark
-> edilmesizor hatalara neden olabilir.
+> edilmesi zor hatalara neden olabilir.
JavaScript'te isim uzayları kavramı da bulunmaz, tanımlanan herşey
*genel olarak paylaşılmış* tek bir isim uzayının içindedir.
View
3  doc/tr/index.json
@@ -54,7 +54,8 @@
"articles": [
"eval",
"undefined",
- "semicolon"
+ "semicolon",
+ "delete"
]
},
{
Please sign in to comment.
Something went wrong with that request. Please try again.