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
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
node_modules/
134 changes: 113 additions & 21 deletions index.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
// eslint-disable-next-line no-unused-vars

const fenomenler = [
{
"number": 1,
Expand Down Expand Up @@ -148,16 +149,27 @@ Aşağıdakileri konsolda gösterim (console.log) işlemi gerçekleştirerek, yu

(işlev yazmanıza gerek yok) */

console.log(fenomenler);

//(1) Dizideki ilk fenomen (0. dizin) profil (profile) adı

console.log(fenomenler[0].profile);

//(2) Dizideki üçüncü fenomenin (2. dizin) takipçi (followers) sayısı

console.log(fenomenler[2].followers);


/* Görev 2 (otomatik kontrol testi yapılmayacak):
(işlev yazmanıza gerek yok)
Fenomenler dizisinde bir yazım hatası var 😱 7. sıradaki fenomen 'Justin Bieber' ın soyismi 'Biber' olarak yanlış yazılmış. Bu sorunu düzeltin ve çalışmanızı kontrol etmek için console.log() yapın.

Fenomenler dizisinde bir yazım hatası var 😱 7. sıradaki fenomen 'Justin Bieber' ın soyismi 'Biber' olarak yanlış yazılmış. Bu sorunu düzeltin ve çalışmanızı kontrol etmek için console.log() yapın.
/*


let fenomenler[6].profile = Justin Bieber;

console.log(fenomenler[6].profile);

/* Görev 3:
Aşağıdaki işlemleri yapmak için indekseGoreFenomen işlevini kullanın:
Expand All @@ -168,11 +180,17 @@ Aşağıdaki işlemleri yapmak için indekseGoreFenomen işlevini kullanın:
NOT: DÖNDÜĞÜNÜZ DİZİN YUKARIDAKİ BİÇİMLE EŞLEŞMESİ GEREKİR, YA DA TESTİ GEÇMEYECEKTİR!
ÖRNEK: fenomenler dizisi ve 3 sayısı ile indekseGoreFenomen çağrılırsa, `3. indekste bulunan fenomen: Leo Messi' */

function indekseGoreFenomen(/*kod*/) {
/*kod*/
}
function indekseGoreFenomen(fenomenler, sayi) {

const parametre = `${sayi}. indekste bulunan fenomen: ${fenomenler[sayi].profile}` ;

console.log("3.soru", parametre);

return parametre;

}

indekseGoreFenomen(fenomenler, 3);

/* Görev 4:
Aşağıdakileri yapmak için profilListesi'ni kullanın:
Expand All @@ -182,11 +200,20 @@ Aşağıdakileri yapmak için profilListesi'ni kullanın:
🌟 Dönüş ÖRNEĞİ: ["Instagram", "Cristiano Ronaldo", "Kylie"....]
*/

function profilListesi(/*kod*/) {
/*kod*/
}
function profilListesi(fenomen) {

let yeniFenomenler = [...fenomen];

for(let i = 0; i < yeniFenomenler.length; i++) {

yeniFenomenler[i] = yeniFenomenler[i].profile;

}
return yeniFenomenler;

}

console.log(profilListesi(fenomenler))

/* Görev 5:
Aşağıdakileri yapmak için fenomenSil'i kullanın:
Expand All @@ -197,11 +224,19 @@ Aşağıdakileri yapmak için fenomenSil'i kullanın:
5. Ortaya çıkan diziyi döndürün

ÖRNEK: fenomenSil işlevi fenomenler dizisi ve 0 indeks sayısı ile çağrılırsa, veri kümemizden 'Instagram' kaldırılmış olarak döndürür. */
function fenomenSil(/*kod*/) {
/*kod*/

function fenomenSil(fenomenlerDizi, index) {

let parametreCopy = [...fenomenlerDizi];

parametreCopy.splice(index, 1)

return parametreCopy;

}


console.log("5.",fenomenSil(fenomenler, 0))

/* Görev 6:
Aşağıdakileri yapmak için fenomenEkle'i kullanın:
Expand All @@ -220,10 +255,27 @@ Aşağıdakileri yapmak için fenomenEkle'i kullanın:

ÖRNEK: fenomenEkle(fenomenler, 6, "Workintech", 10000000, 2022, "Instagram") çağrıldığında dizinin sonuna yukarıdaki nesne en sona eklenerek yeni fenomenler dizisini döndürmelidir. */

function fenomenEkle(/*kod*/) {
/*kod*/
}
function fenomenEkle(fenomenlerdi, para, para2, para3, para4, para6) {

const newArr = [...fenomenlerdi];

const yeniNesne = {

"number": para,
"profile": para2,
"followers": para3,
"posts": para4,
"platform": para6

};

newArr.push(yeniNesne);

return newArr;

};

console.log("görev 6.", fenomenEkle(fenomenler, 6, "Workintech", 10000000, 2022, "Instagram"));

/* Görev 7:
Aşağıdakileri yapmak için enFenomenler'yi kullanın:
Expand All @@ -233,10 +285,24 @@ Aşağıdakileri yapmak için enFenomenler'yi kullanın:
ÖRNEK: enFenomenler(fenomenler) çağrıldığında sonuç olarak ["Instagram", "Cristiano Ronaldo", ... "Khabane lame"] dönemelidir
*/

function enFenomenler(/*kod*/) {
/*kod*/
function enFenomenler(fenoarray) {

let newfe = [];

fenoarray.forEach((fenomen) => {

if (fenomen.followers > 100000000) {

newfe.push(fenomen.profile);

}
});

return newfe;

}

console.log("7", enFenomenler(fenomenler));

/* Görev 8:
Aşağıdakileri yapmak için fenomenGonderimSayisi'nı kullanın:
Expand All @@ -247,11 +313,21 @@ Aşağıdakileri yapmak için fenomenGonderimSayisi'nı kullanın:
ÖRNEK: fenomenGonderimSayisi(fenomenler, 'Will Smith') çağrıldığında "136" dönmelidir
*/

function fenomenGonderimSayisi(/*kod*/){
/*kod*/
}
function fenomenGonderimSayisi(fenomenler1, profname) {

const newArray = [...fenomenler1];

for(let i = 0; i < newArray.length; i++) {

if (newArray[i].profile.includes(profname)) {

return newArray[i].posts;
}
}

}

console.log(fenomenGonderimSayisi(fenomenler, 'Will Smith'));

/* Görev 9:
Aşağıdakileri yapmak için platformaGoreCokGonderiYapanFenomen'ni kullanın:
Expand All @@ -264,11 +340,27 @@ Not: Gönderi sayısı belli olmayan (NA) hesaba katmayın.
Örnek: platformaGoreCokGonderiYapanFenomen(fenomenler, 'TikTok') çağrıldığında "charli damelio" dönmelidir
*/

function platformaGoreCokGonderiYapanFenomen(/*kod*/){
/*kod*/
}
function platformaGoreCokGonderiYapanFenomen(fenomenlerDizisi, platformismi) {

let listelenenfenoarr = [];

for(let i = 0; fenomenlerDizisi.length; i++) {

if(fenomenlerDizisi[i].platform == platformismi) {

listelenenfenoarr.push(fenomenlerDizisi[i]);
}

}
const maxfeno = listelenenfenoarr.sort(function (ilk, ikinci) {
return ikinci.posts - ilk.posts
});

console.log("9", maxfeno);
return maxfeno[0].profile;
}

console.log(platformaGoreCokGonderiYapanFenomen(fenomenler, 'TikTok'));

/* ***** GÖREVLERİN SONU ***** */

Expand All @@ -290,4 +382,4 @@ module.exports = {
enFenomenler,
fenomenGonderimSayisi,
platformaGoreCokGonderiYapanFenomen
}
};
Loading