Repository navigation
Expand file tree
/
Copy path2-arrays.js
More file actions
175 lines (129 loc) · 5.34 KB
/
Copy path2-arrays.js
File metadata and controls
175 lines (129 loc) · 5.34 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
// ?=========================================================
// ? DİZİLER (ARRAYS)
// ?=========================================================
console.log("***** ARRAYS ******");
//* Dizi Tanımlama
//* ---------------------------------------------------------
// ! 1:yöntem (Array literal) - Tercih edilen yöntem
const isimler = ["ahmet", "mehmet", "ismet", "saffet"];
console.log(isimler);
console.log(isimler.length);
// ! 2. Yöntem (Object Constructor)
const diller = new Array("Python", "Java", "C++", "JS", "Go");
console.log(diller);
const numbers = new Array(3, 2, 1);
console.log(numbers);
const sayilar = new Array(10);
//! 10 elemanlık boş bir array oluşturdu
console.log(sayilar);
//* Diziden Veri Okuma-Yazma
//* ---------------------------------------------------------
// ! Okuma
const java = diller[1];
console.log(java);
//!Diziye yazma
isimler[2] = "Canan";
console.log(isimler);
// ! Hata,const keyword'u ile tanılanmış bir diziye tamaıyla bir atama yapılmaz
// isimler = [`Can`, `Canan`, `Cavidan`];
// console.log(isimler);
// ! Uncaught TypeError: Assignment to constant variable.
const yaslar = [22, 18, 15];
const kisiler = ["Ahmet", "Yılmaz", 2022, 2022 - 1970, true, 5.6, yaslar];
console.log(kisiler);
console.log(kisiler[6][1]);
const sonYas = kisiler[6][2]++;
console.log(sonYas, kisiler);
//? ===========================================================
//? DİZİYİ DEĞİŞTİREN (MUTATOR) METOTLAR
//? ===========================================================
const cars = [`BMW`, `Porsche`, `Mercedes`, `Fiat`];
// * pop() son elemanı siler ve sildiği elemanı döndürüyor
const deleted = cars.pop();
console.log(cars, "silinen", deleted);
//* push() dizinin sonuna eleman ekler ve dizinin son eleman sayısını donduruyor
const n = cars.push("Volvo");
console.log(cars, n);
// * unshift dizinin 0. indeksine eleman ekler ve dizinin son eleman sayisini döndürür
const boyut = cars.unshift(`Audi`);
console.log(boyut, cars);
//* dizinin 0. index elemanını siler ve silinen elemani dondurur.
const silinen = cars.shift();
console.log(silinen, cars);
//* reverse() Dizinin tamamini ters sıraya çevirir
console.log(cars.reverse());
console.log(cars);
//* sort() Diziyi alfabetik olarak sıralar
console.log(cars.sort());
const rakamlar = [3, 5, 1, 10, 55];
console.log(rakamlar); //! alfabetik sıraladığı için rakamlarda doğru sonuç çıkmayabilir
//* sort metodu diziyi iterasyona uğratır ve parametre olarak aldığı arrow fonksiyonunu dizini her bir elemanına uygular. Bu sayede küçük sayılar ile büyük sayıları yer değiştirerek sıralama işlemini gerçekleştirir
rakamlar.sort((a, b) => a - b);
console.log(rakamlar);
cars.splice(1, 0, "Vosvos");
console.log(cars); // ! 1. indis'e Vosvos değeri eklenir (elman sayısı bir artar)
cars.splice(2, 1, "Anadol");
console.log(cars); // ! 2. indiste kini Anadol olarak değiştirir ( eleman sayısı değişmez)
cars.splice(2, 2, "Seat");
console.log(cars); // ! 2. indisten itibaren 2 indisi silere Seat olarak değiştirir ( eleman sayısı azalır)
//? ===========================================================
//? DİZİ ERİŞİM METOTLARI
//? ===========================================================
const sayilar1 = [3, 5, 2, '2', 'üc', 2, 'bes', 5];
//* includes()
//*-----------------------------------------------------------
console.log(sayilar1.includes('5')); //false
console.log(sayilar1.includes(5)); //true
//* indexOf(), lastIndexOf();
//*-----------------------------------------------------------
//* ilk eslesen indeksi dondurur.
const ikiIndeks = sayilar1.indexOf(2);
console.log("2'nin son indeksi:", sayilar1.lastIndexOf(2)); //5
console.log("2'nin son ilk indeksi:", ikiIndeks); //2
//* Ornek
//*-----------------------------------------------------------
const arananString = prompt('Aranan sayiyi girinz:');
const arananNumber = Number(arananString);
let bulunduMu = false;
if (sayilar1.includes(arananString)) {
console.log("Arananın String'in indeksi:", sayilar1.indexOf(arananString));
bulunduMu = true;
}
if (sayilar1.includes(arananNumber)) {
console.log('Arananın Sayinin indeksi:', sayilar1.indexOf(arananNumber));
bulunduMu = true;
}
if (!bulunduMu) {
console.log('Aranan bulunamamıştır');
}
//* join()
//*-----------------------------------------------------------
//? join, dizinin elamanlari birlestirip string hale cevirir.
// const sayilar1 = [3, 5, 2, "2", "üc", 2, "bes", 5];
const stringSayilar1 = sayilar1.join(' ');
console.log(stringSayilar1);
//* toString()
//*-----------------------------------------------------------
//? toString fonksiyonu sadece dizinin elemanlarinin aralarina
//? (virgul) koyarak birlestirir ve string yapar.
const stringSayilar2 = sayilar1.toString();
console.log(stringSayilar2);
//* slice()
//*-----------------------------------------------------------
const arabalar = ['bmw', 'mercedes', 'audi', 'ferrari', 'anadol'];
const sliced1 = arabalar.slice(2);
console.log(sliced1);
const sliced2 = arabalar.slice(1, 3); // start: inclusive, stop :exclusive
console.log(sliced2);
//* concat()
//*-----------------------------------------------------------
const yazilar = ['a', 'b', 'ad', 'soyad', 'yas'];
const numbersArray = [3, 5, 1, 4, 7];
const birlesik = yazilar.concat(
true,
numbersArray,
false,
['a', 'b', 'c'],
[['x', 'y', 'z']] //nested
);
console.log(birlesik);