Function.eval()
digunakan untuk mengevaluasi apa saja yang direpresentasikan di dalam parameter expression
.
Sintaks:
- Di mana
expression
adalah ekspresi valid yang akan diperlakukan sebagai kode JavaScript oleh interpreter. Jika nilai parameterexpression
bukanlah string, maka itu yang akan dikembalikan. Sebagai contoh,eval(5)
akan mengembalikan nilai 5. Jika nilai parameterexpression
adalah string, interpreter mencoba untuk menginterpretasikan string tersebut seolah-olah adalah kode JavaScript.
Function.eval()
adalah fungsi standard JavaScript 1.0+, JScript 1.0+, ECMAScript 1.0+ dan didukung Google Chrome Beta+, Firefox 1.0 (Gecko 1.7)+, Internet Explorer 3+, Netscape Navigator 2.0+, Opera 3.0+, Safari 1.0+.
Misalkan saya mempunyai variabel myString
seperti ini:
Jika saya mencoba menguji variabel di atas untuk banyaknya karakter di dalam tanda kutip dan tanpa melibatkan Function.eval()
, maka string "(myString.length) == 5" yang akan dikembalikan:
Tetapi jika saya melibatkan Function.eval()
untuk mengevaluasi ekspresi "(myString.length) == 5"
, maka nilai boolean true
yang akan dikembalikan:
Nilai true
dikembalikan, karena interpreter menganggap bahwa di atas adalah suatu kondisi (apakah banyaknya karakter dari variabel myString
sebanyak 5) yang harus diuji kebenarannya dan tidak menganggap di atas adalah suatu string.
Contoh-contoh berikutnya anda perlu mencoba untuk memperhatikan output dari setiap ekspresi yang melibatkan Function.eval()
dan yang tidak.
Berikut interpreter menganggap ekspresi "1 + 1"
yang melibatkan Function.eval()
adalah operasi tambah-tambahan, yaitu 1 ditambah 1 dan hasilnya adalah 2:
Contoh di bawah ini interpreter menganggap ekspresi 'myNum' yang melibatkan fungsi Function.eval()
adalah perwakilan variabel yang harus ditampilkan nilainya:
Contoh di bawah ini interpreter menganggap ekspresi "document.write('Halo!')"
yang melibatkan fungsi Function.eval()
adalah perintah string 'Halo!' harus dituliskan ke halaman oleh metode write():