Photo by NordWood Themes on Unsplash

JAVASCRIPT’IN TARIHÇESI

Javascript Rest Kavramı

Javascript Rest bize ne gibi avantajlar sağlar ? Kodun okunmasını nasıl kolaylaştırır ?

  • Javascript Rest Sağladığı Avantaj ve Dezavantajlar nelerdir?
  • Arkaplanda Rest Nasıl Çalışır ?

Rest Nedir ?

Rest kavramı zaten bildiğimiz diğer dillerde de sıkça kullanılan bir kavram. Örneğin C, Java dillerinden daha uygulamanın başlangıcı olan main örnek vermek istiyorum.

//Sample C code
int main( int argc, char *argv[] ) {
//Sample Java code
public class SampleJava {
public static void main(String[] args) {
for(int i = 0; i < args.length; i++) {
System.out.println(args[i]);
}
}
}
//Sample Code
public class SampleJava {
public static void main(String ...args) {
for(int i = 0; i < args.length; i++) {
System.out.println(args[i]);
}
}
}
function sum(numbers){
let toplam=0; numbers.forEach(el=>toplam+=el);return toplam;
}
console.log(sum([2,4,6,5])); //17
function sum(...numbers){
let toplam=0; numbers.forEach(el=>toplam+=el);return toplam;
}
console.log(sum(2,4,6,5))//17

Javascript Rest’in Sağladığı Avantaj ve Dezavantajlar Nelerdir ?

Kodun o aşamasında elinizde bir array yoksa bunun için ekstradan array oluşturma kodundan sizi kurtarmış olur. Bu size avantaj sağlar. Fakat.siz bu rest önüne arkasına parametreler eklemek isterseniz. (x, y, …numbers) şeklinde rest önüne başka değişkenler koymak isterseniz bu mümkün fakat (…numbers, x, y) sonrasına koymak isterseniz bunu yapamazsınız buda bir dezavantaj. Siz kodu yazarken bu avantaj ve dezavantajlarınızı bilerek kodu yazmanız gerekir.

Arkaplanda Rest Nasıl Çalışır ?

Peki rest kullanmadan bu işlemleri yapamaz mıyız? Burda function hiç parametre almasa bile değer olarak geçirdiğimiz parametrelere arguments olarak erişebiliriz. Array.prototype.slice.call bu kısma değer olarak geçirilen arguments array nesnesi oluşturur.

function sum() {
const numbers = Array.prototype.slice.call(arguments);
let toplam=0; numbers.forEach(el=>toplam+=el);return toplam;
}
console.log(sum(2,4,6,5))//17
{ 0:2,1:4,2:6,3:5 }

Okumaya Devam Et 😃

Bu yazının devamı veya yazı grubundaki diğer yazılara erişmek için bu linke tıklayabilirsiniz.

--

--

Frontend Lead at Thundra

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store