
Solusi dan penjelasan untuk latihan JS.
Ini bukan lembar curang!
Saya membuat kompilasi ini saat menyelesaikan algoritma JavaScript di Freecodecamp dan EDabit. Saya pikir ini pasti panduan yang bermanfaat bagi orang -orang yang mencoba bangun dan berjalan dalam paradigma pengembangan web.
Buat fungsi yang akan menampilkan nilai terkecil di array.
Contoh:
> console . log ( findSmallest ( [ 30 , 45 , 60 , 7 ] ) ) ;
> 1Referensi:
Larutan:
function findSmallest ( arr ) {
return Math . min ( ... arr ) ;
} Fungsi yang akan mengembalikan string Anda dalam urutan abjad
Contoh:
> console . log ( AlphabeticalOrder ( 'hello' ) ) ;
> "ehllo"Referensi:
Array.split
Array.noin
Larutan:
function AlphabeticalOrder ( str ) {
return str
. split ( "" )
. sort ( )
. join ( "" ) ;
} Dalam matematika, faktorial bilangan bulat non-negatif, dilambangkan dengan n!, Adalah produk dari semua bilangan bulat positif kurang dari atau sama dengan n. Secara sederhana, faktorial 7 diselesaikan seperti ini:
7 _ 6 _ 5 _ 4 _ 3 _ 2 _ 1 = 5.040
Contoh:
> console . log ( factorializer ( 7 ) ) ;
> 5040Referensi:
Rekursi
Jika dan Lainnya Pernyataan
Larutan:
function factorializer ( int ) {
if ( int <= 1 ) {
return 1 ;
} else {
return int * factorializer ( int - 1 ) ;
}
} Fungsi yang membuat Anda tahu jika angka genap atau aneh
Contoh:
> console . log ( oddOrEven ( 7 ) ) ;
> "Odd"Referensi:
Larutan:
function oddOrEven ( int ) {
let ouput = int % 2 ;
if ( output == 0 ) {
return "Even" ;
} else {
return "Odd" ;
}
} Hapus semua nomor ganjil dalam array dan kembalikan array baru yang hanya berisi angka genap
Contoh:
> console . log ( evenOnly ( [ 1 , 2 , 3 , 4 , 5 , 6 ] ) ) ;
> [ 2 , 4 , 6 ]Referensi:
Array.filter
Modulo
Larutan:
function evenOnly ( arr ) {
let result = arr . filter ( arr => arr % 2 == 0 ) ;
return result ;
} Buat fungsi yang akan menerima array, periksa tipe data dari setiap elemen. Fungsi akan menghapus elemen string dan akan mengembalikan array baru
Contoh:
> console . log ( numbersOnly ( [ 'text' , 3 , 7 , 'github' , 13 , 'dev' ] ) ) ;
> [ 3 , 7 , 13 ]Referensi:
Array.filter
tipeof
Larutan:
function numbersOnly ( arr ) {
return arr . filter ( arr => typeof arr == "number" ) ;
} Kembalikan jumlah angka yang kembali ke akarnya. Dengan kata lain, fungsinya akan bekerja seperti ini:
addup (5);
// 5 + 4 + 3 + 2 + 1 + 0 = 15
Contoh:
> console . log ( addUp ( 8 ) ) ;
> 36Referensi:
Rekursi
1 + 2 + 3 + 4 + ⋯
Larutan:
function addUp ( num ) {
if ( num <= 1 ) {
return num ;
} else {
return num + addUp ( num - 1 ) ;
}
} Buat fungsi yang akan menerima array dan lakukan hal berikut:
Dapatkan elemen terendah
Dapatkan elemen tertinggi
Dapatkan panjang array
Dapatkan rata -rata semua elemen;
Simpan kriteria ini dalam array baru
Contoh:
> console . log ( minMaxLengthAverage ( [ 7 , 13 , 3 , 77 , 100 ] ) ) ;
> [ 3 , 100 , 5 , 40 ]Referensi:
Math.Min
Math.max
Array.reduce
Array.length
Larutan:
function minMaxLengthAverage ( arr ) {
const min = Math . min ( ... arr ) ;
const max = Math . max ( ... arr ) ;
const len = arr . length ;
//Reducer for get Average function
const ave = arr => arr . reduce ( ( acc , curVal ) => acc + curVal , 0 ) / len ;
const average = ave ( arr ) ;
//Return output
return [ min , max , len , average ] ;
} Array.sort() mengurutkan string secara abjad. Bagaimana jika kita ingin mengurutkan angka dari yang terendah ke tertinggi? Apakah itu akan menghasilkan output yang benar?
Contoh: Inilah yang terjadi jika kami menerapkan Array.sort() ke angka:
> arr = [ 45 , 34 , 23 , 12 , 7 ]
> console . log ( arr . sort ( ) ) ;
> [ 12 , 23 , 34 , 45 , 7 ]Output tidak benar?, Sedangkan kami mengharapkan ini menjadi nilai pengembalian:
> console . log ( sortNumsAscending ( [ 7 , 13 , 3 , 77 , 100 ] ) ) ;
> [ 3 , 5 , 40 , 100 ]Referensi:
Menyortir javascript
Array.sort ()
Larutan:
function sortNumsAscending ( arr ) {
let sorter = ( a , b ) => {
return a - b ;
} ;
if ( arr == [ ] ) {
return [ ] ;
} else if ( arr == null ) {
return [ ] ;
} else {
return arr . sort ( sorter ) ;
}
} Mengubah nomor yang diberikan ke angka Romawi
Contoh:
> romanNumbers ( 1989 ) ;
> MCMLXXXIXReferensi:
Angka Romawi
Array.join ()
Array.indexof ()
Array.splice ()
Larutan:
function romanNumbers ( num ) {
let values = [ 1000 , 900 , 500 , 400 , 100 , 90 , 50 , 40 , 10 , 9 , 5 , 4 , 1 ] ;
let romanNumerals = [
"M" ,
"CM" ,
"D" ,
"CD" ,
"C" ,
"XC" ,
"L" ,
"XL" ,
"X" ,
"IX" ,
"V" ,
"IV" ,
"I"
] ;
let roman = "" ;
for ( i = 0 ; i < values . length ; i ++ ) {
while ( values [ i ] <= num ) {
roman += romanNumerals [ i ] ;
num -= values [ i ] ;
}
}
return roman ;
}
console . log ( romanNumbers ( 1989 ) ) ; Mengembalikan jumlah absolut dari semua elemen array
Contoh:
> getAbsSum ( [ - 1 , - 3 , - 5 , - 4 , - 10 , 0 ] ) ;
> 23Referensi:
Array.prototype.reduce
Math.abs
Larutan:
function getAbsSum ( arr ) {
const reducer = ( acc , currVal ) => {
return acc + currVal ;
} ;
return Math . abs ( arr . reduce ( reducer ) ) ;
} Membentuk segitiga menggunakan tag hash
Contoh:
> #
> ##
> ###
> ####
> #####
> ######
> #######Referensi:
Larutan:
for ( x = "#" ; x . length <= 7 ; x += x ) {
console . log ( x ) ;
} Kembalikan berapa banyak kata yang diberikan
Contoh:
> countWords ( 'hello from kbpsystem!' ) ;
> 3Referensi:
String.prototype.split
Array.length
Larutan:
function countWords ( str ) {
return str . split ( " " ) . length ;
} Lipat gandakan semua elemen dalam array dengan panjangnya
Contoh:
> MultiplyByLength ( [ 4 , 1 , 1 ] ) ;
> [ 12 , 3 , 3 ]Referensi:
untuk
Array.length
Array.prototype.push
Array.prototype.map
Larutan:
function MultiplyByLength ( arr ) {
let len = arr . length ;
for ( i = 0 ; i < len ; i ++ ) {
arr [ i ] = arr [ i ] * len ;
}
return arr ;
} Buat fungsi yang akan memeriksa apakah str1 berakhir dengan karakter di str2
Aturan:
Ambil dua string sebagai argumen
Tentukan apakah string kedua cocok dengan akhir dari string pertama
Mengembalikan nilai boolean
Contoh:
> console . log ( checkEnding ( "samurai" , "zi" ) ) ;
> falseReferensi:
Metode String.Prototype.endswith () menentukan apakah string berakhir dengan karakter string yang ditentukan, mengembalikan true atau false yang sesuai.
Metode array.prototype.join bergabung dengan semua elemen array (atau objek seperti array) ke dalam string dan mengembalikan string ini.
Larutan:
function checkEnding ( str1 , str2 ) {
return str1 . endsWith ( str2 ) ;
} Buat fungsi yang akan mengulang setiap karakter string dua kali
Contoh:
> console . log ( doubleChar ( 'exercise' ) ) ;
> eexxeerrcciisseeReferensi:
Array.prototype.split metode split() membagi objek string menjadi array string dengan memisahkan string menjadi substring, menggunakan string pemisah yang ditentukan untuk menentukan di mana membuat setiap split.
Array.prototype.map Metode map() membuat array baru dengan hasil panggilan fungsi yang disediakan pada setiap elemen dalam array panggilan.
Array.prototype.noin Metode ini bergabung dengan semua elemen array (atau objek seperti array) ke dalam string dan mengembalikan string ini.
Larutan:
function doubleChar ( str ) {
let x = str . split ( "" ) ;
return x . map ( x => x . repeat ( 2 ) ) . join ( "" ) ;
} Penjelasan: Pada solusi di atas, pertama kami menerapkan metode split pada argumen string dan kemudian menyimpannya dalam variabel yang disebut x . Selanjutnya, kami menggunakan fungsi peta untuk melakukan proses duplikasi pada setiap elemen string, yang dianggap sebagai array pada kasus ini karena kami hanya menerapkan metode split pada string. Setelah proses duplikasi selesai, kami memanggil metode join() . Menerapkan metode ini akan mengubah array kembali menjadi string lagi tetapi kali ini dengan nilai duplikat baru
Kembalikan lokasi indeks suatu elemen dari array yang diberikan. Argumen pertama adalah array yang ingin Anda cari dan yang kedua adalah elemen (baik string/angka) yang harus dicari.
Contoh:
> console . log ( findIndex ( [ 'github' , 'gitlab' , 'bitbucket' , 'apollo' ] , 'gitlab' ) ) ;
> 1Referensi:
Larutan:
function findIndex ( arr , element ) {
return arr . indexOf ( element ) ;
} Penjelasan: Fungsi findIndex membutuhkan dua argumen. Pertama adalah array yang akan dipantau dan kemudian yang terakhir adalah elemen pada array yang perlu ditemukan. JavaScript memiliki metode bawaan yang disebut indexOf() dan kami menggunakannya untuk menemukan lokasi indeks elemen tertentu dalam array. Metode ini mengulangi array yang menemukan nilai indeks suatu elemen
Latihan ini adalah milik FreeCodecamp
Latihan ini adalah implementasi pernyataan Do Whene. Tujuan kami di sini adalah untuk terus menjalankan fungsi/pernyataan, menetapkan paramater dan segera setelah hasil parameter mengevaluasi ke false , eksekusi fungsi/pernyataan akan berhenti
Contoh:
var result = "" ;
var i = 0 ;
do {
i = i + 1 ;
result = result + i ;
} while ( i < 5 ) ;
console . log ( result ) ;
// expected result: "12345"Referensi:
Pernyataan do ... sementara membuat loop yang menjalankan pernyataan yang ditentukan sampai kondisi pengujian dievaluasi menjadi false. Kondisi ini dievaluasi setelah menjalankan pernyataan, menghasilkan pernyataan yang ditentukan yang mengeksekusi setidaknya sekali.
Larutan:
// Setup
> var myArray = [ ] ;
> var i = 10 ;
> // Only change code below this line.
> do {
myArray . push ( i ) ;
i ++ ;
console . log ( i )
} while ( i < 11 ) Kami sedang menggunakan codetriage!
Silakan mengirimkan masalah atau permintaan menarik