Cara menggunakan TEXT.CONTAINS di JavaScript

Salah satu pilar pemrograman fungsional adalah penggunaan khusus dari register dan operasi register. Dan hal-hal persis seperti apa yang mereka dengar. array hal, dan hal-hal yang Anda lakukan untuk mereka. Tetapi pola pikir fungsional memperlakukannya sedikit berbeda dari yang Anda duga

Artikel ini akan melihat lebih dekat apa yang saya suka sebut sebagai operasi registri "tiga besar".

var tasks = [
43,
var tasks = [
44, dan
var tasks = [
45. Membungkus kepala Anda di sekitar ketiga fungsi ini merupakan langkah penting untuk dapat menulis kode fungsional yang bersih, dan membuka pintu ke teknik pemrograman fungsional dan reaktif yang sangat kuat.

Ini juga berarti Anda tidak perlu menulis

var tasks = [
46 pengulangan lagi

Ingin tahu?

Peta Dari Daftar ke Daftar

Seringkali, kita mendapati diri kita perlu mengambil sebuah array dan memodifikasi setiap elemen di dalamnya dengan cara yang persis sama. Contoh umum adalah mengkuadratkan setiap elemen dalam larik angka, mengambil nama dari daftar pengguna, atau menjalankan regex pada larik string.

var tasks = [
_43 adalah metode yang dibuat untuk melakukan itu. Itu didefinisikan di
var tasks = [
_48, sehingga Anda dapat memanggilnya di array apa pun, dan menerima panggilan balik sebagai argumen pertamanya

Saat Anda memanggil

var tasks = [
43 pada sebuah array, itu akan menjalankan panggilan balik pada setiap elemen di dalamnya, mengembalikan array baru dengan semua nilai yang dikembalikan oleh panggilan balik

Pada dasarnya,

var tasks = [
_43 meneruskan tiga argumen ke callback Anda

  1. Item saat ini dalam array
  2. Indeks array dari item saat ini
  3. Seluruh array yang Anda sebut peta

Mari kita lihat beberapa kode

var tasks = [ _43 dalam Praktek

Katakanlah kita memiliki aplikasi yang mengatur berbagai tugas Anda untuk hari itu. Setiap

var tasks = [
_52 adalah objek, masing-masing dengan properti
var tasks = [
53 dan
var tasks = [
54

1
// Durations are in minutes

2
3
var tasks = [
4
5
  {
6
7
// Durations are in minutes

0
// Durations are in minutes

1
// Durations are in minutes

2
// Durations are in minutes

3
// Durations are in minutes

4
// Durations are in minutes

5
// Durations are in minutes

6
// Durations are in minutes

7
// Durations are in minutes

8
  {
2
0
2
1
2
2
2
3
2
4
2
5
2
6
2
7
// Durations are in minutes

6
2
9
3
0
  {
3
2
3
3
3
4
3
5
3
6
3
7
3
8
3
9
var tasks = [
0
var tasks = [
1
var tasks = [
2
var tasks = [
3

Katakanlah kita ingin membuat array baru hanya dengan nama setiap tugas, sehingga kita dapat melihat semua yang telah kita selesaikan hari ini. Menggunakan

var tasks = [
_46 loop, kami akan menulis sesuatu seperti ini

1
var tasks = [
5
2
3
var tasks = [
8
4
5
4
1
6
7
4
4

JavaScript juga menawarkan iterasi

var tasks = [
_56. Ini berfungsi seperti
var tasks = [
46 loop, tetapi mengatur semua kekacauan memeriksa indeks loop kami terhadap panjang array untuk kami

1
4
6
2
3
4
9
4
5
5
2
6
5
4
7
5
6

Dengan menggunakan _______0________43, kita dapat menulis

1
5
8
2
3
  {
1
4
5
  {
4

Saya menyertakan parameter

var tasks = [
59 dan
var tasks = [
60 untuk mengingatkan Anda bahwa mereka ada jika Anda membutuhkannya. Karena saya tidak menggunakannya di sini, Anda dapat mengabaikannya, dan kode akan berjalan dengan baik

Ada beberapa perbedaan penting antara kedua pendekatan tersebut

  1. Dengan menggunakan
    var tasks = [
    
    _43, Anda tidak perlu mengelola status iterasi
    var tasks = [
    
    46 Anda sendiri
  2. Anda dapat mengoperasikan elemen secara langsung, daripada harus mengindeks ke dalam array
  3. Anda tidak perlu membuat larik baru dan melakukan
    var tasks = [
    
    63 di atasnya.
    var tasks = [
    
    43 mengembalikan semua produk jadi sekaligus, sehingga kita dapat dengan mudah menetapkan nilai pengembalian ke variabel baru
  4. Anda harus ingat untuk menyertakan pernyataan
    var tasks = [
    
    _65 dalam panggilan balik Anda. Jika tidak, Anda akan mendapatkan larik baru yang diisi dengan
    var tasks = [
    
    66

Menghasilkan, semua fungsi yang akan kita lihat hari ini di bagian karakteristik

Fakta bahwa kita tidak perlu mengelola status perulangan secara manual membuat kode kita lebih sederhana dan lebih mudah dipelihara. Fakta bahwa kita dapat mengoperasikan elemen secara langsung daripada harus mengindeks ke dalam array membuat semuanya lebih mudah dibaca

Menggunakan iterasi

var tasks = [
_56 menyelesaikan kedua masalah ini untuk kita. Tapi
var tasks = [
43 masih memiliki setidaknya dua keunggulan berbeda

  1. var tasks = [
    
    _56 mengembalikan
    var tasks = [
    
    66, sehingga tidak terkait dengan metode array lainnya.
    var tasks = [
    
    _43 mengembalikan array, sehingga Anda dapat menautkannya dengan metode array lainnya
  2. var tasks = [
    
    43 mengembalikan array dengan produk jadi, daripada meminta kami untuk mengubah array di dalam loop

Menjaga jumlah tempat di mana Anda mengubah status menjadi minimum mutlak adalah prinsip penting pemrograman fungsional. Itu membuat kode lebih aman dan lebih mudah dipahami

Sekarang juga saat yang tepat untuk menunjukkan bahwa jika Anda berada di Node, menguji contoh ini di konsol browser Firefox, atau menggunakan Babel atau Traceur, Anda dapat menulis ini lebih pendek dengan fungsi panah ES6

1
  {
6

Fungsi panah memungkinkan kita meninggalkan kata kunci

var tasks = [
65 dalam satu baris

Tidak ada yang lebih mudah dibaca dari itu

Kena kau

Panggilan balik yang Anda berikan ke

var tasks = [
_43 harus memiliki pernyataan
var tasks = [
65 yang eksplisit, atau
var tasks = [
43 akan mengeluarkan array yang
var tasks = [
66. Tidak sulit untuk mengingat untuk memasukkan nilai
var tasks = [
65, tetapi tidak sulit untuk melupakannya

Jika Anda lupa,

var tasks = [
43 tidak akan mengeluh. Sebaliknya, itu akan secara diam-diam mengembalikan array yang penuh dengan kekosongan. Kesalahan senyap seperti itu bisa sangat sulit untuk di-debug

Untungnya, ini adalah satu-satunya gotcha dengan

var tasks = [
43. Tapi itu jebakan yang cukup umum yang harus saya tunjukkan. Selalu pastikan panggilan balik Anda berisi pernyataan
var tasks = [
65

Penerapan

Membaca implementasi adalah bagian penting dari pemahaman. Jadi, mari kita menulis cahaya kita sendiri

var tasks = [
43 untuk lebih memahami apa yang pada dasarnya terjadi. Jika Anda ingin melihat implementasi kualitas produksi, lihat Mozilla polyfill di MDN

1
  {
8
2
3
6
1
4
5
6
4
6
6
6
7
6
8
// Durations are in minutes

1
// Durations are in minutes

2
7
1
// Durations are in minutes

4
// Durations are in minutes

5
7
4
// Durations are in minutes

7
// Durations are in minutes

8
7
7
2
0
2
1
// Durations are in minutes

00
2
3
2
4
  {
4

Kode ini menerima array dan fungsi callback sebagai argumen. Ini kemudian membuat array baru; . Jika Anda menjalankan ini di konsol Anda, Anda akan mendapatkan hasil yang sama seperti sebelumnya. Pastikan Anda menginisialisasi

var tasks = [
_83 sebelum Anda mengujinya

Meskipun pada dasarnya kita menggunakan perulangan for, membungkusnya dalam sebuah fungsi akan menyembunyikan detailnya dan memungkinkan kita untuk bekerja dengan abstraksi.

Itu membuat kode kita lebih deklaratif—ia mengatakan apa yang harus dilakukan, bukan bagaimana melakukannya. Anda akan menghargai betapa mudahnya kode Anda dibuat untuk dibaca, dipelihara, dan, erm, debug

Menyaring Kebisingan

Selanjutnya dari operasi array kami adalah

var tasks = [
_44. Seperti itulah kedengarannya. Dibutuhkan array, dan menyaring elemen yang tidak diinginkan

Seperti

var tasks = [
_43,
var tasks = [
44 didefinisikan dalam
var tasks = [
48. Ini tersedia dalam berbagai array, dan Anda memberinya panggilan balik sebagai argumen pertama.
var tasks = [
_44 mengeksekusi callback pada setiap elemen array, dan membuat array baru yang hanya berisi elemen di mana callback mengembalikan nilai
var tasks = [
89

Juga seperti

var tasks = [
_43,
var tasks = [
44 meneruskan tiga argumen ke callback Anda

  1. Barang saat ini
  2. Indeks saat ini
  3. Array yang Anda sebutkan adalah
    var tasks = [
    
    44

var tasks = [ _44 dalam Praktek

Mari kita lihat kembali contoh tugas kita. Alih-alih menarik nama setiap tugas, katakanlah saya ingin mendapatkan daftar tugas yang membutuhkan waktu dua jam atau lebih untuk diselesaikan

Menggunakan

var tasks = [
_56, kami akan menulis

1
________13______05
2
3
// Durations are in minutes

08
4
// Durations are in minutes

10
5
// Durations are in minutes

12
6
// Durations are in minutes

14
7
  {
4

Dengan

var tasks = [
_44

1
// Durations are in minutes

18
2
// Durations are in minutes

20
3
  {
4
4
5
// Durations are in minutes

25
6
// Durations are in minutes

27

Di sini, saya telah memperpanjang dan meninggalkan argumen

var tasks = [
_59 dan
var tasks = [
60 ke panggilan balik kami, karena kami tidak menggunakannya

Sama seperti

var tasks = [
_43,
var tasks = [
44 memungkinkan kita

  • hindari mutasi array dalam iterasi
    var tasks = [
    
    _56 atau
    var tasks = [
    
    46
  • tetapkan hasilnya langsung ke variabel baru, daripada memasukkannya ke dalam array yang kita definisikan di tempat lain

Kena kau

Panggilan balik yang Anda berikan ke

var tasks = [
_43 harus menyertakan pernyataan pengembalian jika Anda ingin berfungsi dengan benar. Dengan
var tasks = [
_44, Anda juga harus menyertakan pernyataan pengembalian, dan Anda harus memastikan pernyataan tersebut mengembalikan nilai boolean

Jika Anda lupa pernyataan pengembalian, panggilan balik Anda akan mengembalikan

var tasks = [
66, yang
var tasks = [
44 tidak akan membantu dengan memaksa ke
4
06. Alih-alih melempar kesalahan, itu akan mengembalikan array kosong secara diam-diam

Jika Anda pergi ke rute lain, dan mengembalikan sesuatu yang tidak secara eksplisit

var tasks = [
89 atau
4
06, maka
var tasks = [
44 akan mencoba mencari tahu apa yang Anda maksud dengan menerapkan aturan pemaksaan JavaScript. Lebih sering daripada tidak, ini adalah bug. Dan, seperti melupakan pernyataan pengembalian Anda, itu akan menjadi pernyataan diam

Selalu pastikan panggilan balik Anda menyertakan pernyataan pengembalian yang eksplisit. Dan selalu pastikan panggilan balik Anda di

var tasks = [
_44 mengembalikan nilai
var tasks = [
89 atau
4
06. Kewarasan Anda akan berterima kasih

Penerapan

Sekali lagi, cara terbaik untuk memahami sepotong kode adalah dengan. baik, dengan menulisnya. Ayo gulung

var tasks = [
44 ringan kita sendiri. Orang-orang baik di Mozilla memiliki polyfill kekuatan industri untuk Anda baca juga

1
// Durations are in minutes

29
2
3
// Durations are in minutes

32
4
5
6
4
6
// Durations are in minutes

37
7
// Durations are in minutes

39
// Durations are in minutes

1
// Durations are in minutes

41
// Durations are in minutes

2________20
var tasks = [
_13_______4
// Durations are in minutes

5
// Durations are in minutes

46
5
84________12174________

Mengurangi Array

var tasks = [
_43 membuat array baru dengan mengubah setiap elemen dalam array, secara terpisah.
var tasks = [
44 membuat larik baru dengan menghapus elemen yang bukan miliknya.
var tasks = [
45, di sisi lain, mengambil semua elemen dalam array, dan menguranginya menjadi satu nilai

Sama seperti

var tasks = [
43 dan
var tasks = [
44,
var tasks = [
45 didefinisikan pada
var tasks = [
48 dan tersedia dalam larik apa pun, dan Anda meneruskan panggilan balik sebagai argumen pertama. Tapi ini juga membutuhkan argumen kedua opsional. value untuk mulai menggabungkan semua elemen array Anda ke dalamnya

var tasks = [
45 melewati empat argumen panggilan balik Anda

  1. Nilai sekarang
  2. Nilai sebelumnya
  3. Indeks saat ini
  4. Array yang Anda sebutkan adalah
    var tasks = [
    
    45

Perhatikan bahwa callback mendapatkan nilai sebelumnya pada setiap iterasi. Pada iterasi pertama, tidak ada nilai sebelumnya. Inilah mengapa Anda memiliki opsi untuk melanjutkan

var tasks = [
45 sebagai nilai awal. Ini bertindak sebagai "nilai sebelumnya" untuk iterasi pertama, ketika tidak ada yang menjadi yang pertama

Terakhir, ingat bahwa

var tasks = [
_45 mengembalikan nilai tunggal, bukan larik yang berisi satu item. Ini lebih penting daripada yang terlihat, dan saya akan kembali ke contoh

var tasks = [ _45 dalam Praktek

Karena

var tasks = [
_45 adalah fungsi yang pada awalnya dianggap paling asing oleh orang-orang, kita akan mulai dengan berjalan selangkah demi selangkah melalui sesuatu yang sederhana

Katakanlah kita ingin mencari jumlah dari daftar angka. Menggunakan loop, tampilannya seperti ini

1
// Durations are in minutes

51
2
// Durations are in minutes

53
3
5
4
4
// Durations are in minutes

57
5
// Durations are in minutes

59
6
  {
4

Meskipun ini bukan kasus penggunaan yang buruk untuk

var tasks = [
56,
var tasks = [
45 masih memiliki kelebihan yang memungkinkan kita menghindari mutasi. Dengan
var tasks = [
_45, kami akan menulis

1
// Durations are in minutes

63
2
// Durations are in minutes

65
3
// Durations are in minutes

67

Pertama, kami memanggil _______0________45 di

4
31 register kami. Kami memberinya panggilan balik, yang menerima nilai sebelumnya dan nilai saat ini sebagai argumen, dan mengembalikan hasil penjumlahan keduanya. Karena kami melewati
4
32 sebagai argumen kedua untuk melakukan
var tasks = [
45, yang akan digunakan sebagai nilai (sebelumnya)
4
34 di loop pertama

Jika kita pergi langkah demi langkah, terlihat seperti ini

PerulanganSebelumnyaSaat iniTotal10112123333646410510515

Jika Anda bukan penggemar tabel, jalankan cuplikan ini di konsol

1
________13______69
2
________13______71
3
// Durations are in minutes

73
4
// Durations are in minutes

75
5
________13______77
6
// Durations are in minutes

79
7
// Durations are in minutes

67_______13___1____1______1______1_____1

Pendeknya.

var tasks = [
45 mengulangi semua elemen array, menggabungkannya dengan cara yang Anda tentukan dalam panggilan balik Anda. Pada setiap iterasi, panggilan balik Anda memiliki akses ke nilai sebelumnya, yang merupakan nilai total sejauh ini, atau akumulasi;

Mari kita kembali ke contoh tugas kita. Kami telah memperoleh daftar nama tugas dari

var tasks = [
43, dan daftar tugas yang difilter yang membutuhkan waktu lama. baik,
var tasks = [
_44

Bagaimana jika kita ingin mengetahui jumlah total waktu yang kita habiskan untuk bekerja hari ini?

Menggunakan iterasi

var tasks = [
_56, Anda akan menulis

1
________13______86
2
5
4
3
17_______9
4
// Durations are in minutes

92
5
// Durations are in minutes

94
6
// Durations are in minutes

96
7
5
6

Dengan

var tasks = [
_45, itu menjadi

1
2
00
2
2
02
3
2
04
4
5
2
07
6
2
09

Mudah

Cukup banyak yang ada untuk itu. Hampir, karena JavaScript memberi kita metode yang kurang dikenal, disebut

4
40. Pada contoh di atas,
var tasks = [
_45 dimulai dari item pertama dalam larik, iterasi dari kiri ke kanan

1
2
11
2
2
13
3
2
15
4
  {
4
5
6
2
20

4
40 melakukan hal yang sama, tetapi berlawanan arah

1
2
22
2
2
24
3
2
26
4
5
6
5
6
2
31

Saya menggunakan

var tasks = [
_45 setiap hari, tetapi saya tidak pernah membutuhkan
4
40. Saya kira Anda mungkin juga tidak. Tetapi jika Anda pernah melakukannya, sekarang Anda tahu itu ada

Kena kau

Tiga gotcha besar dengan

var tasks = [
_45 adalah

  1. Lupa melakukan
    var tasks = [
    
    _65
  2. Lupakan nilai awalnya
  3. Mengharapkan array ketika
    var tasks = [
    
    _45 mengembalikan satu nilai

Untungnya, dua yang pertama mudah dihindari. Memutuskan berapa nilai awal Anda bergantung pada apa yang Anda lakukan, tetapi Anda akan segera menguasainya

Yang terakhir mungkin tampak sedikit aneh. Jika

var tasks = [
45 hanya akan mengembalikan satu nilai, mengapa Anda mengharapkan sebuah array?

Ada beberapa alasan bagus untuk itu. Pertama,

var tasks = [
45 selalu mengembalikan satu nilai, tidak selalu satu angka. Jika Anda mengurangi larik demi larik, misalnya, ia akan mengembalikan satu larik. Jika Anda menggunakan larik khusus atau yang dikurangi, akan adil untuk berharap bahwa larik yang berisi satu item tidak akan menjadi kasus khusus

Kedua, jika

var tasks = [
_45 mengembalikan array nilai tunggal, secara alami akan cocok dengan
var tasks = [
43 dan
var tasks = [
44, dan fungsi lain pada array yang mungkin Anda gunakan dengannya

Penerapan

Saatnya untuk melihat terakhir kita di pangkalan. Seperti biasa, Mozilla memiliki polyfill antipeluru untuk dikurangi jika Anda ingin memeriksanya

1
2
33
2
2
35
3
5
4
4
2
_______________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________ E jelas

Dua hal yang perlu diperhatikan di sini

  1. Kali ini, saya menggunakan nama
    4
    53 dari
    4
    34. Inilah yang biasanya Anda lihat di alam liar
  2. Saya menetapkan
    4
    _53 sebagai nilai awal, jika pengguna memberikannya, dan default ke
    4
    32, jika tidak. Beginilah perilaku
    var tasks = [
    
    _45 yang asli juga

Gunakan mereka bersama-sama. Memetakan, Memfilter, Mengurangi, dan Kemampuan Berantai

Pada titik ini, Anda mungkin tidak terlalu terkesan

Cukup adil.

var tasks = [
43,
var tasks = [
44, dan
var tasks = [
45, dengan sendirinya, tidak terlalu menarik

Bagaimanapun, kekuatan sejati mereka terletak pada keterhubungan mereka

Katakanlah saya ingin melakukan hal berikut

  1. Mengumpulkan tugas selama dua hari
  2. Ubah durasi tugas menjadi jam, bukan menit
  3. Memfilter semua yang membutuhkan waktu dua jam atau lebih
  4. Tambahkan semuanya
  5. Kalikan hasilnya dengan tarif per jam untuk penagihan
  6. Menghasilkan output jumlah dolar yang diformat

Pertama, mari kita tentukan tugas kita untuk hari Senin dan Selasa

1
2
51
2
2
53
3
2
55
4
2
57
5
2
59
6
2
53
7
2
63
// Durations are in minutes

1
2
65
// Durations are in minutes

2
// Durations are in minutes

41
// Durations are in minutes

4
2
69
// Durations are in minutes

5
// Durations are in minutes

7
2
72
// Durations are in minutes

8
2
53
2
0
2
76
2
1
2
78
2
3
2
59
2
4
2
53
2
6
2
84
2
7
2
57
2
9
2
59
3
0
2
53
3
2
2
92
3
3
2
94
3
5
// Durations are in minutes

41
3
6
2
69
3
8
5
4
3
9
3
02

Dan sekarang, transformasi indah kita

1
3
04
2
3
06
3
3
08
4
3
10
5
3
12
6
3
14
7
3
16
// Durations are in minutes

1
3
18
// Durations are in minutes

2
3
20
// Durations are in minutes

4
3
22
// Durations are in minutes

5
3
24
// Durations are in minutes

7
3
26
// Durations are in minutes

8
3
28
2
0
3
30
2
1
3
32

Atau, lebih sederhana

1
3
34
2
3
36
3
3
38
4
3
40
5
3
42
6
3
44
7
3
46
// Durations are in minutes

1
3
48
// Durations are in minutes

2
3
50
// Durations are in minutes

4
3
52
// Durations are in minutes

5
3
54
// Durations are in minutes

7
3
56
// Durations are in minutes

8
3
58
2
0
3
60

Jika Anda sudah sampai sejauh ini, ini seharusnya cukup mudah. Ada dua keanehan kecil yang bisa dijelaskan

Pertama, pada baris 10, saya harus menulis

1
3
62
2
3
64
3
3
66
4
3
68

Ada dua hal yang perlu diklarifikasi di sini

  1. Tanda tambah di depan
    4
    _53 dan
    4
    62 memaksa nilainya menjadi angka. Jika Anda tidak melakukan ini, nilai yang dikembalikan akan berupa string yang agak tidak berguna,
    4
    63
  2. Tanpa membungkus jumlah dalam tanda kurung,
    var tasks = [
    
    45 akan mengembalikan nilai tunggal, bukan array. Itu akan berakhir dengan melempar
    4
    _65, karena Anda hanya dapat menggunakan
    var tasks = [
    
    43 pada array

Bagian kedua yang mungkin membuat Anda sedikit tidak nyaman adalah

var tasks = [
45 terakhir, yaitu

1
3
62
2
3
72
3
3
74
4
3
76
5
3
78
6
  {
4

Itu memanggil

var tasks = [
_43 untuk mengembalikan array yang berisi nilai tunggal. Di sini, kami memanggil
var tasks = [
_45 untuk mengeluarkan nilai itu

Cara lain untuk melakukan ini adalah dengan menghapus panggilan untuk mengurangi, dan mengindeks ke dalam array yang mengeluarkan

var tasks = [
43

1
3
82
2
3
84
3
3
86
4
3
88
5
3
90
6
3
92
7
3
94
// Durations are in minutes

1
3
96
// Durations are in minutes

2
3
98
// Durations are in minutes

4
var tasks = [
00
// Durations are in minutes

5
var tasks = [
02
// Durations are in minutes

7
var tasks = [
04
// Durations are in minutes

8
var tasks = [
06

Itu benar sekali. Jika Anda lebih nyaman menggunakan indeks array, lanjutkan

Tapi saya mendorong Anda untuk tidak melakukannya. Salah satu cara paling ampuh untuk menggunakan fungsi ini adalah di ranah pemrograman reaktif, di mana Anda tidak akan bebas menggunakan indeks array. Menendang kebiasaan itu sekarang akan membuat teknik pembelajaran reaktif jauh lebih mudah secara keseluruhan

Akhirnya, mari kita lihat bagaimana iterasi teman kita

var tasks = [
56 akan menyelesaikannya

1
var tasks = [
08
2
var tasks = [
10
3
var tasks = [
12
4
var tasks = [
14
5
var tasks = [
16
6
7
var tasks = [
19
// Durations are in minutes

1
var tasks = [
21
// Durations are in minutes

2
5
4
// Durations are in minutes

4
var tasks = [
25
// Durations are in minutes

5
var tasks = [
27
// Durations are in minutes

7
var tasks = [
29
// Durations are in minutes

8
5
6
2
0
2
1
var tasks = [
34
2
3
var tasks = [
36
2
4
5
6
2
6
2
7
2
9
var tasks = [
42

Ditoleransi, tapi ramai

Kesimpulan & Langkah Selanjutnya

Dalam tutorial ini, Anda telah mempelajari cara kerja

var tasks = [
_43,
var tasks = [
44, dan
var tasks = [
45; . Anda telah melihat bahwa mereka semua memungkinkan Anda untuk menghindari kondisi mutasi, yang membutuhkan penggunaan iterasi
var tasks = [
46 dan
4
76, dan Anda sekarang harus memiliki ide bagus tentang bagaimana menggabungkan semuanya

Sekarang, saya yakin Anda ingin berlatih dan membaca lebih lanjut. Berikut adalah tiga saran teratas saya untuk ke mana harus pergi selanjutnya

  1. Tutorial luar biasa Jafar Husain tentang Pemrograman Fungsional dalam JavaScript, lengkap dengan pengantar Rx yang solid. js
  2. Instruktur Kursus Envato Tuts+ Jason Rhodes tentang Pemrograman Fungsional dalam JavaScript
  3. Panduan Utama untuk Pemrograman Fungsional, yang membahas lebih dalam mengapa kita menghindari mutasi, dan pemikiran fungsional secara umum

JavaScript telah menjadi salah satu bahasa de-facto yang berfungsi di web. Bukan tanpa kurva belajar, dan ada banyak kerangka kerja dan perpustakaan untuk membuat Anda sibuk juga. Jika Anda mencari sumber daya tambahan untuk dipelajari atau digunakan dalam pekerjaan Anda, lihat apa yang kami miliki di pasar Envato

Jika Anda menginginkan lebih banyak tentang hal semacam ini, periksa profil saya dari waktu ke waktu; . //kotoran. Aku

Pertanyaan, komentar, atau kebingungan?