Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
91 changes: 70 additions & 21 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,36 @@ const { fifaData } = require('./fifa.js')
Verilen datayı parçalayarak aşağıdaki verileri (console.log-ing) elde ederek pratik yapın.

💡 İPUCU: Öncelikle datayı filtrelemek isteyebilirsiniz */
// Year == 2014 && Stage == "Final" maçını al, sakla
/*const finalMaci2014 = fifaData.filter(finalMaci); //array

//(a) 2014 Dünya kupası Finali Evsahibi takım ismi (dizide "Home Team Name" anahtarı)
function finalMaci(mac) {
return mac.Year ==2014 && mac["Stage"] == "Final";
}

//(b) 2014 Dünya kupası Finali Deplasman takım ismi (dizide "Away Team Name" anahtarı)
const finalMaci2014v2 = fifaData.filter((mac) => {
return mac.Year == 2014 && mac["Stage"] == "Final";
}
)

//(c) 2014 Dünya kupası finali Ev sahibi takım golleri (dizide "Home Team Goals" anahtarı)
const finalMaci2014v3 = fifaData.filter(mac => mac.Year == 2014 && mac["Stage"]== "Final"); */

//console.log(finalMaci2014v3);
//(a) 2014 Dünya kupası Finali Evsahibi takım ismi (dizide "Home Team Name" anahtarı)
//console.log(finalMaci2014[0]['Home Team Name']);
//(b) 2014 Dünya kupası Finali Deplasman takım ismi (dizide "Away Team Name" anahtarı)
//console.log(finalMaci2014[0]['Away Team Name']);
//(c) 2014 Dünya kupası finali Ev sahibi takım golleri (dizide "Home Team Goals" anahtarı)
//console.log(finalMaci2014[0]['Home Team Goals']);
//(d)2014 Dünya kupası finali Deplasman takım golleri (dizide "Away Team Goals" anahtarı)

//console.log(finalMaci2014[0]['Away Team Goals']);
//(e) 2014 Dünya kupası finali kazananı*/


/* if(finalMaci2014[0]['Home Team Name']>finalMaci2014[0]['Away Team Name']){
console.log("2014 Dünya Kupasını " + finalMaci2014[0]['Home Team Name'] + " Kazandı");
} else {
console.log("2014 Dünya Kupasını " + finalMaci2014[0]['Away Team Name'] + " Kazandı");
}
/*
/* Görev 2:
Finaller adlı fonksiyonu kullanarak aşağıdakileri uygulayın:
1. Bir dizi(array) olan Fifa datasını fonksiyonun birinci parametresi olarak alacak
Expand All @@ -25,12 +43,13 @@ const { fifaData } = require('./fifa.js')
💡 İPUCU - verilen data içindeki nesnelerin(objects) "Stage" anahtarına bakmalısınız
*/

function Finaller(/* kodlar buraya */) {
function Finaller(data) {

/* kodlar buraya */
let finalMaclari = data.filter(item => item.Stage == "Final")
return finalMaclari;
}


//console.log(Finaller(fifaData));

/* Görev 3:
Bir higher-order fonksiyonu olan Yillar isimli fonksiyona aşağıdakileri uygulayın:
Expand All @@ -39,11 +58,16 @@ function Finaller(/* kodlar buraya */) {
3. Finaller data setindeki tüm yılları içeren "years" adındaki diziyi(array) döndürecek
*/

function Yillar(/* kodlar buraya */) {
function Yillar(veri, callback) {

let yillar = callback(veri).map(item =>{
return item.Year;
})

/* kodlar buraya */
return yillar;
}

//console.log(Yillar(fifaData, Finaller));

/* Görev 4:
Bir higher-order fonksiyonunu olan Kazananlar isimli fonksiyona aşağıdakileri uygulayın:
Expand All @@ -53,12 +77,26 @@ function Yillar(/* kodlar buraya */) {
💡 İPUCU: Beraberlikler(ties) için şimdilik endişelenmeyin (Detaylı bilgi için README dosyasına bakabilirsiniz.)
4. Tüm kazanan ülkelerin isimlerini içeren `kazananlar` adında bir dizi(array) döndürecek(return) */

function Kazananlar(/* kodlar buraya */) {

/* kodlar buraya */

function Kazananlar(veri2, callback) {
let finaller = callback(veri2);
let kazananlar = [];
finaller.forEach(item =>{

if(item['Home Team Name']>item['Away Team Name']){
kazananlar.push(item["Home Team Name"])
} else if (item['Home Team Name']>item['Away Team Name']){
kazananlar.push(item["Away Team Name"])
} else {
let kelimeler = item['Win conditions'].split(" ");
kazananlar.push(kelimeler[0]);
}
})
return kazananlar;
}


//console.log(Kazananlar(fifaData, Finaller));



/* Görev 5:
Expand All @@ -72,12 +110,22 @@ function Kazananlar(/* kodlar buraya */) {
💡 İPUCU: her cümlenin adım 4'te belirtilen cümleyle birebir aynı olması gerekmektedir.
*/

function YillaraGoreKazananlar(/* kodlar buraya */) {

/* kodlar buraya */
function YillaraGoreKazananlar(data, cb_finaller, cb_yillar, cb_kazananlar) {

let finalMetin = [];
let yillar = cb_yillar(data, cb_finaller);
let kazananlar = cb_kazananlar(data, cb_finaller);
yillar.forEach((item, i) => {
finalMetin.push(`${item} yılında, ${kazananlar[i]} dünya kupasını kazandı!`);

})



return finalMetin;
}

//console.log(YillaraGoreKazananlar(fifaData,Finaller,Yillar,Kazananlar));

/* Görev 6:
Bir higher order fonksiyonu olan `OrtalamaGolSayisi` isimli fonksiyona aşağıdakileri uygulayın:
Expand All @@ -93,10 +141,11 @@ function YillaraGoreKazananlar(/* kodlar buraya */) {

*/

function OrtalamaGolSayisi(/* kodlar buraya */) {

/* kodlar buraya */
function OrtalamaGolSayisi(Finaller) {

let finalToplamGol=Finaller.reduce((total,item)=> (total + item["Home Team Goals"] + item["Away Team Goals"]),0 )
let sonuc= (finalToplamGol/(Finaller.length)).toFixed(2)
return sonuc;
}


Expand Down
12 changes: 12 additions & 0 deletions node_modules/.bin/acorn

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions node_modules/.bin/acorn.cmd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

28 changes: 28 additions & 0 deletions node_modules/.bin/acorn.ps1

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 12 additions & 0 deletions node_modules/.bin/browserslist

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 12 additions & 0 deletions node_modules/.bin/browserslist-lint

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions node_modules/.bin/browserslist-lint.cmd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

28 changes: 28 additions & 0 deletions node_modules/.bin/browserslist-lint.ps1

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions node_modules/.bin/browserslist.cmd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

28 changes: 28 additions & 0 deletions node_modules/.bin/browserslist.ps1

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 12 additions & 0 deletions node_modules/.bin/escodegen

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions node_modules/.bin/escodegen.cmd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

28 changes: 28 additions & 0 deletions node_modules/.bin/escodegen.ps1

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading