JavaScript OOP හි ප්රවේශක ගුණාංග
වස්තුවක ගුණාංග වර්ග දෙකක් තිබේ.
පළමු වර්ගය තොරතුරු ගුණාංග (data properties) වේ. අපි දැනටමත් ඒවා සමඟ වැඩ කරන්නේ කෙසේදැයි දනිමු. වත්මන් මොහොත දක්වා අපි භාවිතා කළ සියලුම ගුණාංග තොරතුරු ගුණාංග විය.
දෙවන වර්ගයේ ගුණාංග අපි තවම සලකා බැලී නැත. මෙය ප්රවේශක ගුණාංග (accessor properties) වේ. ස්වභාවය අනුව මේවා ශ්රිත වන අතර අගය නියම කිරීම සහ ලබා ගැනීම සඳහා භාවිතා කරනු ලබන නමුත් බාහිර කේතය තුළ ඒවා සාමාන්ය වස්තු ගුණාංග ලෙස පෙනේ.
ප්රවේශක ගුණාංග නිර්මාණය කරනු ලබන්නේ
get සහ set යන මූලික වචන භාවිතා කරමින්
ක්රම (methods) ප්රකාශයට පත් කරන විට ලියනු ලැබේ:
class User {
get name() {
}
set name(name) {
}
}
මෙවැනි ප්රකාශනයක ප්රතිඵලයක් ලෙස
අපගේ වර්ගය (class) හට name යන ගුණාංගය
ඇති වේ. මේ සමඟ මෙම ගුණාංගය කියවීමට උත්සාහ කරන විට
get හරහා ප්රකාශයට පත් කරන ලද ක්රමය (method)
කැදවනු ලැබේ:
let name = user.name;
ලිවීමට උත්සාහ කරන විට set හරහා
ප්රකාශයට පත් කරන ලද ක්රමය කැදවනු ලැබේ:
user.name = 'john';
පහත දක්වා ඇති වර්ගය (class) ලබා දී ඇත:
class Employee {
get name() {
console.log('get');
}
set name(name) {
console.log('set');
}
}
මෙම වර්ගයේ වස්තුවක් නිර්මාණය කර
name ගුණාංගයට තොරතුරු ලිවීමට සහ කියවීමට
උත්සාහ කරන්න.