Tiada timbunan dalam JavaScript Anda boleh menggunakan tatasusunan untuk melaksanakan semua fungsi tindanan ialah struktur data masuk-keluar dahulu tidak berada di bahagian atas tindanan tidak boleh diakses Anda perlu terlebih dahulu Hanya dengan mengalih keluar elemen di atas anda boleh mendapatkan elemen di bahagian bawah tindanan Sebagai contoh, anda boleh menggunakan push() untuk menambah elemen ke bahagian atas timbunan itu.
Persekitaran pengendalian tutorial ini: sistem Windows 10, versi JavaScript 1.8.5, komputer Dell G3.
Tiada tindanan dalam JavaScript, tetapi tatasusunan boleh digunakan untuk melaksanakan semua fungsi tindanan.
Timbunan ialah struktur linear, ciri terbesarnya ialah masuk dahulu, keluar terakhir, masuk terakhir, keluar dahulu.
push():
pop():
Timbunan:
Timbunan ialah struktur data yang serupa dengan senarai, yang boleh digunakan untuk menyelesaikan banyak masalah pengaturcaraan Timbunan adalah Data yang cekap struktur, kerana data hanya boleh ditambah atau dipadamkan di bahagian atas tindanan, jadi operasi sedemikian pantas dan mudah untuk dilaksanakan.
Tindanan ialah jenis senarai khas dalam tapak hanya boleh diakses dengan menyeret satu hujung senarai, iaitu bahagian atas timbunan Chen Wei. Timbunan pinggan mangkuk adalah struktur timbunan yang paling biasa Pinggan mangkuk hanya boleh diambil dari atas, dan pinggan mangkuk yang dibasuh hanya boleh diletakkan di bahagian atas. Timbunan dipanggil struktur data masuk-dahulu-keluar.
Memandangkan tindanan mempunyai ciri keluar-masuk-dahulu, mana-mana elemen yang tidak berada di bahagian atas tindanan tidak boleh diakses. Untuk mendapatkan elemen di bahagian bawah tindanan, elemen di atas mesti dialih keluar.
Operasi pada tindanan termasuk menolak elemen ke dalam tindanan dan mengeluarkan elemen dari tindanan. Untuk menolak elemen ke bahagian atas tindanan, gunakan kaedah push() dan untuk pop elemen dari bahagian atas tindanan, gunakan kaedah pop(). Kaedah lain ialah pratonton elemen di bahagian atas tindanan Walaupun anda boleh mengakses elemen di bahagian atas tindanan menggunakan kaedah pop(), unsur-unsur di bahagian atas tindanan akan dipadamkan secara kekal selepas memanggil kaedah ini. Kaedah peek() hanya mengembalikan elemen di bahagian atas timbunan tanpa memadamkannya.
Untuk merekodkan kedudukan elemen teratas timbunan, dan juga untuk menandakan tempat elemen baharu boleh ditambah, kami menggunakan bahagian atas pembolehubah Apabila elemen ditolak ke dalam timbunan, pembolehubah meningkat. dan apabila elemen muncul dari tapak, pembolehubah teratas berubah berkurangan.
Kaedah pop(), push(), dan peek() ialah tiga kaedah yang paling penting Pada masa yang sama, mentakrifkan kaedah clear() boleh mengosongkan semua elemen dalam timbunan yang ditentukan oleh atribut panjang bilangan elemen dalam tindanan Pada masa yang sama, tentukan atribut kosong untuk mengenal pasti sama ada masih terdapat unsur dalam tindanan, tetapi tujuan yang sama boleh dicapai menggunakan atribut panjang.
Tentukan operasi tindanan
Tindanan ialah senarai khas yang hanya boleh diakses dari satu hujung, sama seperti timbunan plat Anda hanya boleh meletakkannya di atas, dan anda hanya boleh mengambilnya dari atas, jadi tindanan ialah struktur data masuk pertama dan keluar terakhir. Disebabkan ciri tindanan ini, mana-mana elemen dalam tindanan yang tidak berada di bahagian atas tindanan tidak boleh diakses Untuk mendapatkan elemen di bahagian bawah tindanan, unsur-unsur di atasnya mesti dialih keluar dan unsur-unsur di bahagian bawah tindanan terdedah pada bahagian atas tindanan. Tindanan juga boleh mengosongkan semua elemen di dalamnya, dan juga boleh merekodkan bilangan elemen dalam tindanan.
Ringkasnya, kami mentakrifkan beberapa kaedah untuk mengendalikan tindanan.
push() Tambahkan elemen pada bahagian atas tindanan
pop() Padamkan elemen dari bahagian atas tindanan
peek() Mengembalikan elemen di bahagian atas tindanan
clear() Membersihkan elemen dalam tindanan
length() Elemen dalam tindanan Nombor
Pelaksanaan tindanan
Untuk melaksanakan tindanan, struktur data asas menggunakan tatasusunan untuk mentakrifkan struktur timbunan Fungsi bermula;
function Stack() { this.dataStore = []; //用来保存栈内元素的数组 this.top = 0; //top用来记录栈顶位置,初始化为0 this.push = push; this.pop = pop; this.peek = peek; this.clear = clear; this.length = length; }
Seterusnya, push(), pop(), peek(), clear() dan length() ialah dilaksanakan.
Kaedah push() ialah, apabila menambah elemen baharu pada bahagian atas tindanan, tambahkan nilai ini pada kedudukan teratas tatasusunan yang merekodkan kedudukan atas tindanan perlu ditambah dengan 1 apabila penambahan selesai;
pop() hanyalah bertentangan dengan push(). Ia memerlukan atas untuk dikurangkan sebanyak 1, tetapi pada masa yang sama, selepas menolak 1, ia mengembalikan nilai bagi kedudukan teratas, iaitu, elemen telah dipadamkan;
peek() secara langsung mengembalikan elemen di kedudukan teratas-1 tatasusunan , iaitu, elemen atas tindanan sudah cukup;
clear() secara langsung memberikan nilai teratas kepada 0 dan mengosongkan timbunan secara langsung length() secara langsung mengembalikan nilai atas, dan kedudukan teratas timbunan ialah timbunan Bilangan elemen dalamanfunction push(element) { this.dataStore[this.top++] = element; // 先在top位置加入元素,之后top加1 } function pop() { return this.dataStore[--this.top]; // top先减1,然后返回top位置的元素 } function peek() { return this.dataStore[this.top - 1]; } function clear() { this.top = 0; } function length() { return this.top; }
tutorial video javascript, bahagian hadapan web]
Atas ialah kandungan terperinci Berapa banyak tindanan yang terdapat dalam javascript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!