Apa kata kunci JavaScript (nama fungsi, variabel, dll) yang dicadangkan?
javascript
reserved-words
sangat besar
sumber
sumber
Jawaban:
Kita harus menautkan ke sumber info aktual, bukan hanya hit google teratas.
http://developer.mozilla.org/En/Core_JavaScript_1.5_Reference/Reserved_Words
JScript 8.0: http://msdn.microsoft.com/en-us/library/ttyab5c8.aspx
sumber
Inilah puisi saya, yang mencakup semua kata kunci yang disediakan dalam JavaScript, dan didedikasikan untuk mereka yang tetap jujur saat ini, dan tidak hanya mencoba untuk membuat skor:
sumber
Untuk melengkapi jawaban benc , lihat Standar ECMA-262 . Ini adalah kata-kata resmi yang dicadangkan, tetapi hanya pedant yang mengabaikan penerapannya untuk menghormati standar. Untuk kata-kata yang dilindungi dari implementasi yang paling populer, yaitu firefox dan internet explorer, lihat jawaban benc.
Kata-kata yang dicadangkan dalam EMCAScript-262 adalah Kata Kunci s, Future Reserved Word s, NullLiteral , dan BooleanLiteral s, di mana Kata Kunci berada
yang Future Reserved Firman s adalah
yang NullLiteral adalah
dan BooleanLiteral adalah
sumber
let
di sini, tetapi saya melihatnya di dokumen: ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdfSaya baru saja membaca tentang ini di JavaScript & jQuery: The Missing Manual :
sumber
alert
sudah diinisialisasi, tetapi tidak ada yang menghentikan Anda untuk menetapkan kembalialert = 5
. Namun, Anda tidak dapat mengaturwindow
ke 5, tetapi Anda dapat menggunakannya sebagai variabel lokal. Itu tidak mungkin dengan kata kunci dicadangkan, penggunaan masa depan,null
,false
,true
.yield
oleh cek cepat saya sehingga +1 dari saya. Ini dapat di ES5.1 diaktifkan dengan mode ketat:implements
interface
let
package
private
protected
public
static
yield
Berikut ini adalah cara agnostik versi browser dan bahasa untuk menentukan apakah string tertentu diperlakukan sebagai kata kunci oleh mesin JavaScript. Penghargaan untuk jawaban ini yang menyediakan inti dari solusi.
sumber
eval
apa pun, kemungkinan besar itu berarti Anda salah melakukannya.Tidak satu pun dari jawaban saat ini yang memperingatkan bahwa terlepas dari ES-Dialek, peramban cenderung memiliki daftar kata kunci yang dicadangkan sendiri, metode dll. Di atas apa yang ditentukan ES.
Misalnya, IE9 melarang penggunaan nama logis seperti:
addFilter
,removeFilter
(mereka, antara lain, metode dilindungi).Lihat http://www.jabcreations.com/blog/internet-explorer-9 untuk daftar yang lebih luas 'saat ini dikenal' khusus untuk IE9. Saya belum menemukan referensi resmi kepada mereka di msdn (atau di tempat lain).
sumber
Berikut adalah daftar dari buku Eloquent JavaScript:
break
case
catch
class
const
continue
debugger
default
delete
do
else
enum
export
extend
false
finally
for
function
if
implements
import
in
instanceof
interface
let
new
null
package
private
protected
public
return
static
super
switch
this
throw
true
try
typeof
var
void
while
with
yield
sumber
jawaban benc sangat bagus, tetapi untuk dua sen saya, saya suka halaman w3schools tentang ini:
http://www.w3schools.com/js/js_reserved.asp
Selain mencantumkan kata kunci yang dicadangkan oleh standar, ia juga memiliki daftar panjang kata kunci yang harus Anda hindari dalam konteks tertentu; misalnya, tidak menggunakan nama
alert
saat menulis kode untuk dijalankan di browser. Itu membantu saya mengetahui mengapa kata-kata tertentu disorot sebagai kata kunci di editor saya meskipun saya tahu itu bukan kata kunci.sumber