Ringkasan kaedah biasa Underscore.js_Others
Ikhtisar
Underscore.js ialah perpustakaan yang sangat ramping, hanya 4KB yang dimampatkan. Ia menyediakan berpuluh-puluh kaedah pengaturcaraan berfungsi, yang sangat memudahkan pengaturcaraan Javascript. Backbone.js rangka kerja MVC adalah berdasarkan pustaka ini.
Ia mentakrifkan objek garis bawah (_) dan semua kaedah pustaka fungsi tergolong dalam objek ini. Kaedah ini boleh dibahagikan secara kasar kepada lima kategori: koleksi, tatasusunan, fungsi, objek dan utiliti.
Pasang di bawah node.js
Underscore.js boleh digunakan bukan sahaja dalam persekitaran penyemak imbas, tetapi juga dalam node.js. Arahan pemasangan adalah seperti berikut:
npm pasang garis bawah
Walau bagaimanapun, node.js tidak boleh menggunakan _ secara langsung sebagai nama pembolehubah, jadi gunakan underscore.js dalam kaedah berikut.
var u = memerlukan("garis bawah");
Kaedah yang berkaitan dengan koleksi
Pengumpulan data bahasa Javascript merangkumi dua struktur: tatasusunan dan objek. Kaedah berikut digunakan untuk kedua-dua struktur.
peta
Kaedah ini melakukan beberapa operasi pada setiap ahli koleksi secara bergilir-gilir dan menyimpan nilai yang dikembalikan dalam tatasusunan baharu.
_.map([1, 2, 3], function(num){ return num * 3; }); // [3, 6, 9] _.map({satu : 1, dua : 2, tiga : 3 }, fungsi(nombor, kunci){ kembalikan nombor * 3; // [3, 6, 9]
setiap satu
Kaedah ini serupa dengan peta, yang melakukan beberapa operasi pada setiap ahli koleksi secara bergilir-gilir, tetapi tidak mengembalikan nilai.
_.setiap([1, 2, 3], makluman); _.setiap({satu : 1, dua : 2, tiga : 3}, makluman);
kurangkan
Kaedah ini melakukan beberapa jenis operasi pada setiap ahli set secara bergilir-gilir, dan kemudian mengumpulkan hasil operasi pada nilai awal tertentu Selepas semua operasi selesai, nilai terkumpul dikembalikan.
Kaedah ini menerima tiga parameter. Parameter pertama ialah pengumpulan yang sedang diproses, parameter kedua ialah fungsi yang beroperasi pada setiap ahli, dan parameter ketiga ialah pembolehubah yang digunakan untuk pengumpulan.
_.reduce([1, 2, 3], function(memo, num){ kembalikan memo num; }, 0); // 6
Parameter kedua kaedah pengurangan ialah fungsi operasi, yang dengan sendirinya menerima dua parameter Yang pertama ialah pembolehubah yang digunakan untuk pengumpulan, dan yang kedua ialah nilai setiap ahli set.
tapis dan tolak
Kaedah penapis melakukan beberapa operasi pada setiap ahli koleksi secara bergilir-gilir dan hanya mengembalikan ahli yang hasil operasinya adalah benar.
_.filter([1, 2, 3, 4, 5, 6], function(num){ return num % 2 == 0; }); // [2, 4, 6]
Kaedah tolak hanya mengembalikan ahli yang hasil operasinya palsu.
_.reject([1, 2, 3, 4, 5, 6], function(num){ return num % 2 == 0; }); // [1, 3, 5]
setiap dan beberapa
Setiap kaedah melakukan beberapa operasi pada setiap ahli koleksi secara bergilir-gilir Jika keputusan operasi semua ahli adalah benar, ia akan kembali benar, jika tidak ia akan mengembalikan palsu.
_.every([1, 2, 3, 4, 5, 6], function(num){ return num % 2 == 0; }); // false
Sesetengah kaedah kembali benar selagi hasil operasi satu ahli adalah benar, jika tidak ia mengembalikan palsu.
_.some([1, 2, 3, 4, 5, 6], function(num){ return num % 2 == 0; }); // true
cari
Kaedah ini melakukan beberapa operasi pada setiap ahli koleksi secara bergilir-gilir dan mengembalikan ahli pertama yang hasil operasinya adalah benar. Jika keputusan operasi semua ahli adalah palsu, undefined dikembalikan.
_.find([1, 2, 3, 4, 5, 6], function(num){ return num % 2 == 0; }); // 2
mengandungi
Jika nilai ada dalam koleksi, kaedah ini mengembalikan benar, jika tidak ia mengembalikan palsu.
_.contains([1, 2, 3], 3); // benar
countBy
Kaedah ini melakukan beberapa jenis operasi pada setiap ahli set secara bergilir-gilir, mengira ahli dengan hasil operasi yang sama seperti satu kategori, dan akhirnya mengembalikan objek yang menunjukkan bilangan ahli yang sepadan dengan setiap hasil operasi.
_.countBy([1, 2, 3, 4, 5], function(num) { return num % 2 == 0 ? 'even' : 'odd'; }); // {ganjil: 3, even: 2 }
kocok
Kaedah ini mengembalikan koleksi yang dikocok.
_.shuffle([1, 2, 3, 4, 5, 6]); // [4, 1, 6, 3, 5, 2]
saiz
Kaedah ini mengembalikan bilangan ahli koleksi.
_.saiz({satu : 1, dua : 2, tiga : 3}); // 3
Kaedah yang berkaitan dengan objek
toArray
Kaedah ini menukar objek kepada tatasusunan.
_.toArray({a:0,b:1,c:2}); // [0, 1, 2]
petik
Kaedah ini mengekstrak nilai atribut tertentu berbilang objek ke dalam tatasusunan.
var stooges = [{nama : 'moe', umur : 40}, {nama : 'larry', umur : 50}, {nama : 'keriting', umur : 60}]; ); // ["moe", "larry", "keriting"]
Kaedah yang berkaitan dengan fungsi
ikat
Kaedah ini mengikat konteks masa jalan fungsi dan mengembalikannya sebagai fungsi baharu.
_.bind(fungsi, objek, [*argumen])
Sila lihat contoh di bawah.
var o = { p: 2, m: function (){console.log(p);} }; o.m() // 2 _.bind(o.m,{p:1})() // 1
ikatSemua
Kaedah ini mengikat semua kaedah objek (kecuali dinyatakan secara khusus) kepada objek.
var buttonView = { label : 'underscore', onClick : function(){ alert('clicked: ' this.label }, onHover : function(){ console.log('hovering: ' this.label); ; _.bindAll(buttonView);
separa
Pengikatan kaedah ini mengikat fungsi pada parameter dan kemudian mengembalikannya sebagai fungsi baharu.
var add = function(a, b) { return a b };
menghafal
Kaedah ini menyimpan cache hasil larian fungsi untuk parameter tertentu.
kelewatan
Kaedah ini boleh menangguhkan fungsi untuk dijalankan untuk masa yang ditentukan.
Kaedah ini boleh menangguhkan menjalankan fungsi sehingga bilangan tugasan yang perlu dijalankan mencapai 0, sama seperti kesan penangguhan setTimeout berjalan selama 0 saat.
Kaedah ini mengembalikan versi baharu fungsi. Apabila memanggil versi baharu fungsi ini secara berterusan, anda mesti menunggu untuk tempoh masa tertentu sebelum mencetuskan pelaksanaan seterusnya.
Kaedah ini juga mengembalikan versi baharu fungsi. Setiap kali versi baharu fungsi ini dipanggil, mesti ada masa tertentu antara panggilan sebelumnya, jika tidak, ia akan menjadi tidak sah. Aplikasi tipikalnya adalah untuk menghalang pengguna daripada mengklik dua kali butang, menyebabkan borang diserahkan dua kali.
Kaedah ini mengembalikan versi baharu fungsi supaya fungsi ini hanya boleh dijalankan sekali. Terutamanya digunakan untuk permulaan objek.
Kaedah ini mengembalikan versi baharu fungsi Fungsi ini hanya akan dijalankan selepas beberapa kali dipanggil.
Kaedah ini mengambil fungsi sebagai parameter, menghantarnya ke fungsi lain, dan akhirnya mengembalikan versi baharu yang terdahulu.
var hello = function(nama) { return "hello: " name; }; (); // 'sebelum, helo: moe, selepas'
karang
Kaedah ini menerima satu siri fungsi sebagai parameter dan menjalankannya mengikut urutan dari belakang ke hadapan Hasil larian fungsi sebelumnya digunakan sebagai parameter larian bagi fungsi seterusnya. Dengan kata lain, tukarkan bentuk f(g(),h()) kepada f(g(h())).
var greet = function(nama){ return "hai: " name; var exclaim = function(statement){ return statement "!" }; ); // 'hai: moe!'
Kaedah alat
templat
Kaedah ini digunakan untuk menyusun templat HTML. Ia menerima tiga parameter.
_.template(templateString, [data], [tetapan])
Makna tiga parameter adalah seperti berikut:
templateString: rentetan templat
data: masukkan data templat
tetapan: tetapan
templateString
Templat rentetan templat ialah bahasa HTML biasa, di mana pembolehubah disisipkan dalam bentuk <%= ... %>; objek data bertanggungjawab untuk menyediakan nilai pembolehubah.
var txt = "
<%= perkataan %>
"; _.template(txt, {perkataan : "Hello World"}) // "
Helo Dunia
"
Jika nilai pembolehubah mengandungi lima aksara khas (& < > ” ‘ /), ia perlu dilepaskan dengan <%- … %>.
var txt = "
<%- perkataan %>
"; _.template(txt, {perkataan : "H & W"}) //
H & W
Arahan JavaScript boleh disisipkan dalam bentuk <% … %>. Berikut adalah contoh pernyataan penghakiman.
var txt = "<% var i = 0; jika (i<1){ %>" "<%= perkataan %>" "<% } %>"; perkataan : "Hello World"}) // Hello World
Penggunaan biasa termasuk pernyataan gelung.
var list = "<% _.setiap(orang, fungsi(nama) { %>
<%= nama %> <% }); %>”; moe
kerinting
larry”
Jika kaedah templat hanya mempunyai templateString parameter pertama dan meninggalkan parameter kedua, fungsi akan dikembalikan dan data boleh dimasukkan ke fungsi ini pada masa hadapan.
data
Semua pembolehubah dalam templateString adalah atribut dalaman bagi objek obj dan objek obj merujuk kepada objek data parameter kedua. Dua pernyataan berikut adalah setara.

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Artikel membincangkan membuat, menerbitkan, dan mengekalkan perpustakaan JavaScript, memberi tumpuan kepada perancangan, pembangunan, ujian, dokumentasi, dan strategi promosi.

Artikel ini membincangkan strategi untuk mengoptimumkan prestasi JavaScript dalam pelayar, memberi tumpuan kepada mengurangkan masa pelaksanaan dan meminimumkan kesan pada kelajuan beban halaman.

Soalan dan penyelesaian yang sering ditanya untuk percetakan tiket kertas terma depan dalam pembangunan front-end, percetakan tiket adalah keperluan umum. Walau bagaimanapun, banyak pemaju sedang melaksanakan ...

Artikel ini membincangkan debugging JavaScript yang berkesan menggunakan alat pemaju pelayar, memberi tumpuan kepada menetapkan titik putus, menggunakan konsol, dan menganalisis prestasi.

Tidak ada gaji mutlak untuk pemaju Python dan JavaScript, bergantung kepada kemahiran dan keperluan industri. 1. Python boleh dibayar lebih banyak dalam sains data dan pembelajaran mesin. 2. JavaScript mempunyai permintaan yang besar dalam perkembangan depan dan stack penuh, dan gajinya juga cukup besar. 3. Faktor mempengaruhi termasuk pengalaman, lokasi geografi, saiz syarikat dan kemahiran khusus.

Artikel ini menerangkan cara menggunakan peta sumber untuk debug JavaScript minifikasi dengan memetakannya kembali ke kod asal. Ia membincangkan membolehkan peta sumber, menetapkan titik putus, dan menggunakan alat seperti Chrome Devtools dan Webpack.

Tutorial ini akan menerangkan cara membuat carta pai, cincin, dan gelembung menggunakan carta.js. Sebelum ini, kami telah mempelajari empat jenis carta carta.js: carta baris dan carta bar (tutorial 2), serta carta radar dan carta rantau polar (Tutorial 3). Buat carta pai dan cincin Carta pai dan carta cincin sangat sesuai untuk menunjukkan perkadaran keseluruhan yang dibahagikan kepada bahagian yang berlainan. Sebagai contoh, carta pai boleh digunakan untuk menunjukkan peratusan singa lelaki, singa wanita dan singa muda dalam safari, atau peratusan undi yang diterima oleh calon yang berbeza dalam pilihan raya. Carta pai hanya sesuai untuk membandingkan parameter tunggal atau dataset. Harus diingat bahawa carta pai tidak dapat menarik entiti dengan nilai sifar kerana sudut kipas dalam carta pai bergantung pada saiz berangka titik data. Ini bermaksud mana -mana entiti dengan perkadaran sifar

Perbincangan mendalam mengenai punca-punca utama perbezaan dalam output konsol.log. Artikel ini akan menganalisis perbezaan hasil output fungsi Console.log dalam sekeping kod dan menerangkan sebab -sebab di belakangnya. � ...
