Built-in Constructors Kullanımı

nhtctn nhtctn

Biz kendi constructorlar ‘ımızı oluştururuz ve constructor’lardan nesneler türetiriz ve bu nesnelere belirli özellikler katmak için prototype kısmına belirli metotlar hatta özellikler ekliyebiliyorduk.

Peki javascript ile gelen bir çok built-in dediğimiz constructolar var örneğin string, object ya da function constructorlar gibi constructor’lar geliyor. Biz bu constructor’larımızın property kısmında bir çok metot görebiliyoruz örneğin string metotlarını, number metotlarını kullanıyorduk. Peki bu metotlar bize yeterli değilse biz bu prototype üzerinde yeni metotlar ekleyip bu build-in constructorları extend yani genişlete biliyoruz.

String

var str1 = "Nihat";
var str2 = new String("Nihat");

console.log(str1);
console.log(typeof str1);
console.log(str2);
console.log(typeof str2);

if (str1 === "Nihat") {
    console.log("Yes");
} else {
    console.log("No No No");
}

Burada hazır bulunan constructor’larımız içerisinde bir metot yani prototype nasıl extend edebilceğinizi öğrendik.


String.prototype.repeats = function (n) {
    return Array(n + 1).join(this);
}

Number

var num1 = 10;
var num2 = new Number(10);

Boolean

var bool1 = true;
var bool2 = new Boolean(true);

Object

var ob1 = {
    name: "Nihat"
}

var obj2 = new Object({
    name: "Nihat"
})

Array

var arr1 = ["Ada", "Sena", "Murat", "Cem"];
var arr2 = new Array("Ada", "Sena", "Murat", "Cem");

Burada ise Array contructor’ına metot eklemiş olduk.

Array.prototype.remove = Array.prototype.remove || function(member){
    var index = this.indexOf(member);

    if(index > -1){
        this.splice(index,1);
    }
   return this;
}
console.log(arr2.remove("Ada"));

Yorum yazın

BENZER YAZILAR