JavaScriptте ок иш функцияларынын колдонулушу менен стандарттык функциялардын айырмасы эмнеде?
sobes.tech AI
AIден жооп
JavaScript-деги ок функциялары стандарттык функциялардан бир нече негизги жагынан айырмаланат:
-
thisконтекст: Ок функцияларда,thisлексикалык жактан айланасынан мурас алат, башкача айтканда, өзүнүнthisконтекстин түзбөйт. Адистик функцияларда,thisкандайча чакырылганына көз каранды. -
argumentsжоктугу: Ок функциялар өзүнүнargumentsобъектисине ээ эмес. Аргументтерге жетүү үчүн параметрлер же тышкы өзгөрмөлөрдү колдонуу керек. -
Курулмучо катары колдонулбайт: Ок функцияларын
newменен чакырса болот эмес, анткени алардын ички [[Construct]] методу жок. -
Кыска синтаксис: Ок функциялары көбүнчө кыска жана кыска функцияларды жазуу үчүн ыңгайлуу.
Мисал:
const obj = {
value: 10,
regularFunc: function() {
console.log(this.value); // 10
},
arrowFunc: () => {
console.log(this.value); // белгисиз же сырткы контексттен мааниси
}
};
obj.regularFunc(); // 10 чыгарат
obj.arrowFunc(); // белгисиз чыгарат
Ошентип, ок функциясы менен жөнөкөй функциянын ортосунда тандоо контекстти башкаруу зарылдыгына жана колдонуу өзгөчөлүктөрүнө көз каранды.