జావాస్క్రిప్ట్ ఆబ్జెక్ట్ ప్రాటోటైప్

అన్ని JavaScript వస్తువులు ప్రాతిపదికగా పరివర్తనలను మరియు మార్గదర్శకాలను పొందుతాయి.

గత చాప్టర్లో, మేము ఎలా ఉపయోగించాలో నేర్చుకున్నామువస్తువు నిర్మాణకర్త:

ఇన్స్టాన్స్

function పర్సన్(ఫస్ట్, లాస్ట్, ఏజ్, ఐస్క్యూలర్) {
    థిస్.ఫస్ట్నేమ్ = ఫస్ట్నేమ్;
    థిస్.లాస్ట్నేమ్ = లాస్ట్నేమ్;
    థిస్.ఏజ్ = ఏజ్;
    థిస్.ఐస్క్యూలర్ = ఐస్క్యూలర్;
};
var myFather = new Person("Bill", "Gates", 62, "blue");
var myMother = new Person("Steve", "Jobs", 56, "green");

స్వయంగా ప్రయత్నించండి

మేము మీరు గుర్తించాము మరియుఅని కాదుప్రస్తుత వస్తువు నిర్మాణకర్తకు కొత్త అనువర్తనాలు జోడించడం:

ఇన్స్టాన్స్

Person.nationality = "English";

స్వయంగా ప్రయత్నించండి

నిర్మాణకర్తకు ఒక కొత్త అనువర్తనాన్ని జోడించడానికి, దానిని నిర్మాణకర్త ఫంక్షన్కు జోడించాలి:

ఇన్స్టాన్స్

function పర్సన్(ఫస్ట్, లాస్ట్, ఏజ్, ఐస్క్యూలర్) {
    థిస్.ఫస్ట్నేమ్ = ఫస్ట్నేమ్;
    థిస్.లాస్ట్నేమ్ = లాస్ట్నేమ్;
    థిస్.ఏజ్ = ఏజ్;
    థిస్.ఐస్క్యూలర్ = ఐస్క్యూలర్;
    this.nationality = "English";
};

స్వయంగా ప్రయత్నించండి

ప్రాతిపదికగా పరివర్తన

అన్ని JavaScript వస్తువులు ప్రాతిపదికగా పరివర్తనలను మరియు మార్గదర్శకాలను పొందుతాయి.

తేదీ వస్తువులు Date.prototype నుండి వారిని ఉంటాయి. క్రమాంక వస్తువులు Array.prototype నుండి వారిని ఉంటాయి. Person వస్తువులు Person.prototype నుండి వారిని ఉంటాయి.

Object.prototype ప్రాతిపదికగా ప్రాథమిక పరివర్తన సాగిస్తుంది:

తేదీ వస్తువు, క్రమాంక వస్తువు మరియు Person వస్తువులు Object.prototype నుండి వారిని ఉంటాయి.

వస్తువులకు అనువర్తనాలు మరియు మార్గదర్శకాలు జోడించడం

కొన్నిసార్లు, మీరు అన్ని నిర్దేశించిన రకమైన ప్రస్తుత వస్తువులకు కొత్త అనువర్తనాలు (లేదా మార్గదర్శకాలను) జోడించాలని కోరుతారు.

有时,您希望向对象构造器添加新属性(或方法)。

使用 prototype 属性

JavaScript prototype 属性允许您为对象构造器添加新属性:

ఇన్స్టాన్స్

function పర్సన్(ఫస్ట్, లాస్ట్, ఏజ్, ఐస్క్యూలర్) {
    థిస్.ఫస్ట్నేమ్ = ఫస్ట్నేమ్;
    థిస్.లాస్ట్నేమ్ = లాస్ట్నేమ్;
    థిస్.ఏజ్ = ఏజ్;
    థిస్.ఐస్క్యూలర్ = ఐస్క్యూలర్;
};
Person.prototype.nationality = "English";

స్వయంగా ప్రయత్నించండి

JavaScript prototype 属性也允许您为对象构造器添加新方法:

ఇన్స్టాన్స్

function పర్సన్(ఫస్ట్, లాస్ట్, ఏజ్, ఐస్క్యూలర్) {
    థిస్.ఫస్ట్నేమ్ = ఫస్ట్నేమ్;
    థిస్.లాస్ట్నేమ్ = లాస్ట్నేమ్;
    థిస్.ఏజ్ = ఏజ్;
    థిస్.ఐస్క్యూలర్ = ఐస్క్యూలర్;
};
పర్సన్.ప్రాటిప్ట్.నేమ్ = function() {
    రిటర్న్ థిస్.ఫస్ట్నేమ్ + " " + థిస్.లాస్ట్నేమ్;
};

స్వయంగా ప్రయత్నించండి

మాత్రమే మార్చండిమీరే తానుయువర్ ప్రాటిప్ట్ అన్నింటినీ మార్చకూడదు. ప్రామాణిక జావాస్క్రిప్ట్ ఆబ్జెక్ట్ ప్రాటిప్ట్ ను మార్చకూడదు.