Rumah  >  Artikel  >  hujung hadapan web  >  Adakah ecmascript seorang jurubahasa?

Adakah ecmascript seorang jurubahasa?

青灯夜游
青灯夜游asal
2022-01-05 10:52:291434semak imbas

ecmascript ialah jurubahasa. ecmascript ialah bahasa pengaturcaraan skrip yang diseragamkan oleh Ecma International melalui ECMA-262 Ia adalah penterjemah dan bertanggungjawab untuk terjemahan Ia adalah bahagian teras bahasa js dan menerangkan sintaks dan objek asas bahasa js.

Adakah ecmascript seorang jurubahasa?

Persekitaran pengendalian tutorial ini: sistem Windows 7, ECMAScript versi 6, komputer Dell G3.

Pelaksanaan JavaScript lengkap terdiri daripada 3 bahagian berbeza berikut:

  • Teras (ECMAScript): Bahagian teras bahasa, yang menerangkan sintaks bahasa dan objek asas.

  • Model Objek Dokumen (DOM): Standard operasi dokumen halaman web, menerangkan kaedah dan antara muka untuk memproses kandungan halaman web.

  • Model Objek Pelayar (BOM): Asas untuk operasi tetingkap klien dan penyemak imbas, menerangkan kaedah dan antara muka untuk berinteraksi dengan penyemak imbas.

ECMAScript (es): Bertanggungjawab untuk terjemahan, penterjemah teras js.

ECMAScript yang ditakrifkan oleh ECMA-262 ialah spesifikasi bahasa skrip standard yang diiktiraf di peringkat antarabangsa yang tidak mempunyai pergantungan pada pelayar web. Piawaian ECMA-262 terutamanya menetapkan bahawa bahasa ini terdiri daripada komponen berikut:

  • Syntax

  • Pembolehubah dan jenis data

  • Kata kunci dan perkataan terpelihara

  • Pengendali

  • Pernyataan kawalan

  • Object

ECMAScript versi 5.0 telah dikeluarkan secara rasmi pada tahun 2009. Untuk masa yang lama, JavaScript digunakan mengikut piawaian 5.0. Pada tahun 2015, ECMAScript 6 dikeluarkan sebagai versi rasmi, secara rasmi dipanggil ECMAScript 2015. ECMAScript mentakrifkan semua sifat, kaedah dan objek bahasa skrip. Oleh itu, anda mesti mengikut piawaian ECMAScript apabila mengekod skrip klien web.

Jenis data JS

5 jenis data asas: Undefined, Null, Boolean, Number, String, Symbol (baharu dalam es6)

1 3 jenis kompleks: objek

5 jenis rujukan: Tatasusunan, Objek, Fungsi, Tarikh, RegExp

3 jenis pembungkusan asas: Boolean, Nombor, Rentetan

2 jenis Binaan tunggal- dalam objek: Global, Matematik

1 Empat cara untuk menentukan jenis data

jenis

const a = ""
console.log(typeof(a)) => String
 
const b = 1
console.log(typeof(b)) => Number
 
const c
console.log(typeof(c)) =>Undefined
 
const d = []
console.log(typeof(d)) => Object
 
const e = {}
console.log(typeof(e)) =>Object
 
const f = null
console.log(typeof(f)) =>Object  //null 作为尚未创建的对象

instanceof

Kaedah ini hanya sesuai untuk menentukan jenis objek

const arr = [] 
console.log(arr instanceof Array)=> true
 
console.log(null instanceof Object) ---> false
 
console.log([function] instanceof Object | Function)  --> true

Object.prototype.toString .call()

Kaedah ini boleh mengesan semua jenis data dan disyorkan. Kerana toString ialah kaedah prototaip Object, dan Array Function, dsb. adalah semua contoh Object. Semua telah mengatasi kaedah toString. Apa yang dikembalikan ialah rentetan jenis

Object.prototype.toString.call(null)  =>  [object Null]
 
Object.prototype.toString.call(Math) => [object Math]
 
Object.prototype.toString.call(function(){}) => [object Function]
 
Objdec.prototype.toString.call(new Date)  => [object Date]
 
Object.prototype.toString.call(Symbol())  => [object Symbol]
 
Object.prototupe.toString.call(undefined)  => [object Undefined]
 
Object.prototype.toString.call(123)  => [object Number]
 
Object.prototype.toString.call(true) => [object Boolean]
 
Object.prototype.toString.call('123') => [object String]
 
Object.prototype.toString.call({})    => [object Object]
 
Object.prototype.toString.call([])    => [object Array]

pembina

menentukan pembina objek.

1. null ialah titik permulaan rantai prototaip js, tiada pembina

2 undefined tidak mempunyai pembina

3 Array --- > benar

[Cadangan berkaitan: tutorial pembelajaran javascript]

Atas ialah kandungan terperinci Adakah ecmascript seorang jurubahasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn