Bu çok basit ve anlaşılır. Koda bak. Javascript uzantısının ardındaki temel kavramı anlamaya çalışın.
Öncelikle javascript fonksiyonunu genişletelim.
function Base(props) {
const _props = props
this.getProps = () => _props
const privateMethod = () => "do internal stuff"
return this
}
Aşağıdaki şekilde çocuk işlevi oluşturarak bu işlevi genişletebilirsiniz.
function Child(props) {
const parent = Base(props)
this.getMessage = () => `Message is ${parent.getProps()}`;
this.prototype = parent
return this
}
Artık Çocuk işlevini aşağıdaki gibi kullanabilirsiniz,
let childObject = Child("Secret Message")
console.log(childObject.getMessage())
console.log(childObject.getProps())
Javascript sınıflarını bu şekilde genişleterek de Javascript Fonksiyonu oluşturabiliriz.
class BaseClass {
constructor(props) {
this.props = props
this.getProps = this.getProps.bind(this)
}
getProps() {
return this.props
}
}
Bu sınıfı şu şekilde Çocuk fonksiyonu ile genişletelim,
function Child(props) {
let parent = new BaseClass(props)
const getMessage = () => `Message is ${parent.getProps()}`;
return { ...parent, getMessage}
}
Yine benzer sonuç elde etmek için Çocuk işlevini aşağıdaki gibi kullanabilirsiniz,
let childObject = Child("Secret Message")
console.log(childObject.getMessage())
console.log(childObject.getProps())
Javascript çok kolay bir dildir. Neredeyse her şeyi yapabiliriz. Mutlu JavaScripting ... Umarım davanızda kullanabileceğiniz bir fikir verebildim.