2016-01-01 15 views
10

Crockford's JavaScript: The Good Partsthe following text içerir.Bazı JavaScript saklıdır kelimeler değişken olarak işlev yapar

Ayrılmış Kelimeler

Aşağıdaki kelimeler JavaScript saklıdır:

abstract boolean break byte case catch char class const continue 
debugger default delete do double else enum export extends false final 
finally float for 
function goto if implements import in instanceof int interface long native new null 
package private protected public return short static super switch synchronized this 
throw throws transient true try typeof var volatile void while with 

Bu kelimelerin çoğu dilde kullanılmaz.

Değişkenleri veya parametreleri adlandırmak için kullanılamazlar. Rezerve edilmiş sözcükleri, nesne editörlerinde anahtar olarak kullanıldığında, bunlar alıntılanmalıdır.

amaçlı sözcükler Bazı

var method;    // ok 
var class;     // illegal 
object = {box: value};  // ok 
object = {case: value}; // illegal 
object = {'case': value}; // ok 
object.box = value;  // ok 
object.case = value;  // illegal 
object['case'] = value; // ok 
benim yüklü tercüman rezerve edilemez görünüyor: yerine köşeli parantez açıklaması kullanmak Onlar nokta gösterimi ile kullanılamaz, bu nedenle için bazen gereklidir. Örneğin, hem Chrome 48 (beta) hem de node.js 0.10.40'da aşağıdaki kod, ayrılmış sözcüklerle tanımlanan iki sayıyı başarıyla ekleyecektir.

var abstract = 1; 
var native = 1; 
abstract + native; 
> 2 

Bu iki ayrılmış sözcüğü neden değişken adları olarak kullanabilirim? Çok önemli bir şeyi mi özlüyorum?

+3

[Bunlar saklı sözcük değildir.] (Http://www.ecma-international.org/ecma-262/6.0/#sec-reserved-words) – Pointy

+0

Neden bunlar [ayrılmış sözcükler listesinde] görünür? (http: //www.w3schools.com/js/js_reserved.asp)? – lee

+7

Çünkü ayrılmış sözcüklerin listesi yanlış. W3Schools'un neden sıklıkla güvenilmez olarak kabul edildiğinin güzel bir örneği. Sağladığım bağlantı, gerçek dil özelliklerine göre. – Pointy

cevap

5

Reserved keywords as of ECMAScript 6

break case class catch const continue debugger default delete do else 
export extends finally for function if import in instanceof new return 
super switch this throw try typeof var void while with yield 

ve abstract ve native (more here) eski ECMAScript şartnamelere gelecek anahtar kelimeler (3 kadar ECMAScript'ler 1) olarak ayrılmıştır.

zaman saklıdır: enum

ayrılmış katı mod kodu tespit edildiğinde Diğer bir deyişle: await

0

ayrılmış bir kelime (: yedek

implements package protected static let interface private public 

bunlar modül kodu tespit edildiğinde Ayrılmış bir tanımlayıcı veya anahtar kelime), bir değişken, işlev veya etiketin adı gibi bir tanımlayıcı olarak kullanılamayan bir kelimedir - "kullanımdan ayrılmıştır". Ayrılmış kelimeler veya anahtar kelimeler programlama dilleri içinde özel bir anlama sahiptir. Sistemin desteklediği dilde, blokları ve döngüleri vb. Tanımlayan veri türlerini tanımlamak için kullanılırlar, böylece işlevsellik sistem kütüphanesinde zaten tanımlanmıştır.

Kodunuza anahtar sözcükler veya ayrılmış sözcükler ekleyerek, kodunuzu çalıştırdığınız anda derleyicinin yanı sıra diğer geliştiricilere de karışıklık yaratın. Bu yüzden ayrılmış sözcükler birçok programlama diline izin vermiyor. Benzer anahtar kelimelere sahip başka bir programlama dili vardır; C, C++, C# ve Java gibi bir ortaklığı paylaşırlar.

Burada en güncel Reserved Words in JavaScript listesini bulabilirsiniz, ayrıca yararlı örnekler içerir.

İlgili konular