原型[prototype]:

为其他对象提供共享属性的对象。

每个函数都有一个原型(prototype)属性,这个属性是一个指针,指向一个对象,这个对象包含特定实例共享的一些属性和方法。

以例服人:

这个例子说明了原型对象是共享的,并且是一个指针,并且对象的实例中也有指向prototype指向对象的指针。

function Animal(name) {
this.name = name || "动物";
}
Animal.prototype.runs = function() {
console.log(this.name + ',跑起来了\n')
}
var dog = new Animal('小狗')
dog.runs() //输出"小狗跑起来了" // 下面增加的方法,dog对象可以使用吗?
Animal.prototype.hi = function() {console.log('hi')}
dog.hi() //输出"hi",说明原型属性是一个指针,指向一个共享对象,不管先添加的还是后添加的方法都能调用 //dog作为一个Animal实例,他的__proto__属性和Animal.prototype指向同一个对象,所以才可以使用原型的方法。
console.dir(dog) // 查看 dog.__proto__ // dog.__proto__ & Animal.prototype
console.log(dog.__proto__ === Animal.prototype) //true,有相同的指针地址

原生构造函数的原型对象[不单函数有原型对象]

console.dir(Object.prototype)

console.dir(Array.prototype)

console.dir(String.prototype)

console.dir(Date.prototype)

再看一个__proto__  &  prototype的例子

var obj = { }
obj.toString() // "[object Object]" //obj 对象为什么有 toString 方法? //因为 obj 对象是 Object 构造函数的实例,obj 对象的原型指针指向 Object.prototype 对象。console.log(obj.__proto__ === Object.prototype )

通过原型关系图理解:

aaarticlea/png;base64,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19xw5+O574nqxoqxFIkwhqh0qRQqxnEEyJFmoS654pZSqbT+Bhu9Yc+9jznx9Euv/Fvuu6S6qGIsRSKMISpdKoWKcRwBcqRZqLnzF6y73galMpttvuXb9zvwpNPO+d31d5khqnHFWIpEGENUJdKQ90QDulvexzCg6+V9GBsBEcYAAJCgvr6+v//979/97ncz16kf/OAHlyxZEmPBCo2Z5QAAXeNf//rXT3/600996lOvfe1r11577dVWW23KlClbbbVVeZiZNGnSt7/97ZWfF2lIgVkOAFBcjzzyyK9+9avPf/7zb3nLW57+9KePHz9+u+22e+973/vNb35z7ty5S5cuXbFixf333z+YZ575zGded911g39cpCEFZjkAQIEsWrToT3/606xZs/bff//nPve548aNe9aznvWOd7zjlFNOufLKKxcuXJj5p7bYYotSqbTLLrs88MAD5V8XaUiBWQ4AkKfly5fffPPNZ5999gc+8IEddthh4sSJG2+88R577PHZz362t7f3wQcfbGYj++6776GHHrrypE05kYYUmOUAAGNt/vz5P/7xjw8//PBXvvKVa6yxxpprrvmqV73qE5/4xPnnn3/XXXe1scH7778/8+siDSkwywEARt2DDz546aWXHnvssW9605s22mijiRMn7rjjjgcffPC3v/3tv/71r8uXLx+lnyvSkAKzHABg5D3xxBNXXHHFl7/85X333XfLLbccN27c1ltv/c53vvOrX/3q1VdfvWjRorHZDZGGFJjlAAAjYOnSpTfccMOZZ5550EEHvehFLxo/fvzTn/70t771rSeccMKvf/3rRx55JJe9EmlIgVkOANCm22+//Qc/+MHHPvaxnXbaabXVVltnnXV23XXXI4888sILL/z3v/+d996tWCHSkAazHACgWffdd9/FF1989NFH77bbbuutt96kSZNe/vKXf/jDHz733HNvvfXWvr6+vHewmkhDCsxyAIC6Hnvssd/+9rcnnnji29/+9s0226ynp+cFL3jBgQce+I1vfOPPf/7zkiVL8t7BYYg0pMAsBwAY8tRTT1177bWnn376u9/97m222aanp2fzzTffe++9Tz755Dlz5jz++ON572BrRBpSYJYDAEnr6+v7+9//fs455xxyyCH/93//t8oqq6y//vpveMMbZs6c+Ytf/OK///1v3jvYEZGGFJjlAEBy7rnnngsuuOBTn/rUa17zmrXXXnu11VbbeeedP/7xj//whz+844478t67kSTSkAKzHACI7+GHH/7Vr351/PHH77nnnptsssn48eNf/OIXv+997zvrrLNuvPHGpUuX5r2Do0WkIQVmOQAQ0KJFi6666qpTTz11//3332qrrcaNG/fsZz97v/32+8pXvvKHP/xh4cKFee/gGBFpSIFZDgBEsGzZsptuuunss8+eMWPG9ttvP2HChI033vjNb37zcccdd9lllz300EN572A+RBpSYJYDAN1q/vz5P/rRjw477LBXvvKVa6yxxpprrvnqV7/6iCOO+MlPfvLPf/4z770rBJGGFJjlAEDXeOCBBy655JJjjz32jW9844Ybbjhx4sSXvOQlH/zgB2fPnn3LLbcsX7487x0sHJGGFJjlAEBxPfHEE1dcccWXvvSlffbZZ8sttxw3btzznve8Aw444LTTTrvmmmsWL16c9w4WnUhDCsxyAKBAli5d+pe//OWMM8446KCDXvjCF44fP37TTTfda6+9vvCFL1x++eWPPvpo3jvYZUQaUmCWAwB56uvru+22277//e9/9KMfnTx58qqrrrruuuu+7nWvO+qooy666KL//Oc/ee9gdxNpSIFZDgCMtXvvvfdnP/vZUUcdtdtuu6233nqrrrrq5MmTP/KRj3zve9+77bbb+vr68t7BOEQaUmCWAwCj7rHHHrv88stPPPHEt73tbZtuumlPT8+22247ffr0M8444/rrr1+yZEneOxiWSEMKzHIAYOQtXrz42muv/drXvnbAAQdss802PT09W2yxxT777PPFL37x97///YIFC/LewVSINKTALAcARsDy5cv/9re/fec73znkkENe+tKXrrLKKhtssMHuu+9+zDHHXHLJJffff3/eO5gokYYUmOUAQJvuvvvuCy644JOf/OQuu+yy1lprrb766q94xSsOO+yw8847784778x771ixQqQhDWY5ANCshx9++Je//OXnPve5Pffcc5NNNpkwYcL2228/Y8aMb33rWzfddNOyZcvy3kGqiTSkwCwHAOp68skn//jHP5566qnTpk17znOeM27cuK222mratGmnnnrqVVdd9eSTT+a9gwxDpCEFZjkAMGTZsmU33XTTt771rfe///3bb7/9hAkTNtlkkz333PP444//5S9/+b///S/vHaQ1Ig0pMMsBIHV33nnneeedd9hhh73iFa9YffXV11prrde85jWf/OQnL7jggnvuuSfvvaMjIg0pMMsBIDn333//JZdccswxx+y+++4bbrjhKqus8tKXvvSQQw4555xz/va3vy1fvjzvHWTEiDSkwCwHgPgWLFjw+9///otf/OI+++yzxRZb9PT0bLPNNu9+97u/9rWvXXvttYsXL857BxktIg0pMMsBIKAlS5Zcf/31Z5xxxvTp07fddtuenp7NNtvsbW9724knnvjb3/72sccey3sHGSMiDSkwywHC6Z1RmjJrXt57wRjr6+u77bbbvve9733kIx+ZPHnyqquuut566+22225HH330z372s3vvvTfvHSQfIg0pMMsBYumdUSqVSqUZvfU+MG/WlFIZ4aeb3XvvvRdddNFRRx31ute9bt1111111VV32mmnj33sY9///vdvv/32vr6+vHeQ/Ik0pMAsB4hlILFkZZr+uFOrfgCiWB599NHLL7/8C1/4wl577bXpppuOHz/+RS960UEHHXTmmWfecMMNS5cuzXsHKRyRhhSY5QDB9GeamrMvg3mm7DtlZ2ykmmJavHjxNddcc9pppx1wwAHPe97zxo0bt+WWW+67775f/vKXr7jiiieeeCLvHaToRBpSYJYDRFN1LmZlVhn4Ym1yGfiOK9CKYfny5bfccst3vvOdD37wgy95yUtWWWWVjTba6E1vetOxxx576aWXPvDAA3nvIF1GpCEFZjlAIFX3yQxGlUZXozWKO4yNu++++yc/+ckRRxyxyy67rLXWWmusscYrX/nKww8//Mc//vH8+fPz3ju6m0hDCsxygEgqMs1QROkPLfVOxDROPIy8//3vf5dddtnnPve5N7/5zU972tMmTJiwww47fOADHzj77LNvvvnmZcuW5b2DxCHSkAKzHKDbDP/IspqIMkykGfb7dOrJJ5/84x//+JWvfGW//fZ7znOeM27cuOc+97n777//rFmz/vSnPz355JN57yBhiTSkwCwH6CLNPrKs+hEBw0UWp2lG3LJly2688cazzjrr/e9//4tf/OIJEyZssskmb3nLWz7/+c//6le/evjhh/PeQVIh0pACsxygkDLub2nlkWXVGSb30zTlp5bCBqc77rjjvPPO+/jHP77zzjuvvvrqa6+99mtf+9ojjzzypz/96b/+9a+8945EiTSkwCwHKJzy5X91KGn2kWVVGWVgk3UyyyidpanztIJ586Jc33b//ff/4he/mDlz5u67777BBhtMmjTpZS972Yc+9KHvfve7t956qzddUgQiDSkwywEKoj+EzOituLqsP2S0/siywc2tqNhAZqYZ0USTdXFcmPMyCxYsmDNnzhe/+MW9995788037+npef7zn/+e97zn61//+nXXXffUU0/lvYNQTaQhBWY5QFE0ujar9UeW1XtEQO22B39uB8EjbI5ZsmTJ9ddf/41vfOPAAw/cdttte3p6nvnMZ06dOvWkk0763e9+9/jjj+e9gzAMkYYUmOUAYynzNZg136xNLm3cC1P9iIDKH77yJ5elqLZuo6m5sqz7n5nW19f3j3/849xzz/3IRz7y8pe/fNKkSeutt97rX//6z3zmMz//+c/vu+++vHcQWiPSkAKzHGAMzJs3r+7jyjIeAFD3fpmWHllWm2my725p9YRKvDtk/vOf/1x00UWf/vSnd91113XWWWe11VabMmXKoYce+oMf/KCLRwUrVqwQaUiDWQ4wqgZzxawZ1fki46RM/eTSziPLyp4bMG/WlOayUz2xrix79NFHf/Ob35xwwgl77bXXM57xjPHjx2+33Xbvfe97v/nNb86dO3fp0qV57yCMGJGGFJjlAKOr4dOLqx9WVv8+/bYeWTb8Szkbi5NjFi9efPXVV5922mnvete7tt5663Hjxj3rWc96xzveccopp1x55ZULFy7MewdhtIg0pMAsBxhlg7kiM1FkP2w546PtPbKs4maZ3tYuohr6s114h8zy5ctvueWW2bNnH3zwwS95yUsmTpy48cYb77HHHp/97Gd7e3sffPDBvHcQxohIQwrMcoDR1vgqr6pM0+ACs1F9ZFkE//znP88///wjjjji1a9+9Zprrrnmmmu++tWv/sQnPnH++effddddee8d5EOkIQVmOcCoq3pFTPZ3m8g0o/DIsu720EMPXXbZZccdd9wee+yx8cYbT5w4cccddzz44INnz57917/+dfny5XnvIORPpCEFZjnAqKt/NVnZdwcTT+MANBKPLOteCxcu/MMf/nDKKafst99+z372s8eNG7f11lu/853v/OpXv3r11VcvWrQo7x2EwhFpSIFZDjD6+nNI49M0A9+t/4iA2j8TPsosXbp07ty5Z5111vve977ttttu/Pjxz3jGM9761reecMIJv/nNbx555JG8dxCKTqQhBWY5wBholGlqzuE0lWkCu+OOO374wx8eeuihO++88+qrr77OOuvsuuuun/70py+88MJ///vfee8ddBmRhhSY5QBjof4dMhkBZrh30ETz3//+9+c///nMmTPf8IY3bLDBBpMmTXr5y1/+4Q9/+Nxzz/3HP/7R19eX9w5CFxNpSIFZDjAm6jyuLPvRzCtfWR/3xfWPP/74nDlzTj755KlTp26++eY9PT0veMELDjzwwG984xt//vOflyxZkvcOQhwiDSkwywHGROVt/VNmzSt/fFn48zFLliz585///PWvf/3AAw98wQte0NPTs/nmm++9994nn3zynDlzHn/88bx3EMISaUiBWQ4wNuo8qizoLTN9fX233nrrueee++EPf/hlL3vZpEmT1l9//Te84Q0zZ878xS9+8d///jfvHYRUiDSkwCwHGCONH+UcwL///e8LL7zwyCOP3HXXXddZZ53VV1995513/vjHP/7DH/7wjjvuyHvvIFEiDSkwywHGSri7/h955JFf//rXJ5xwwlvf+tZnPOMZ48ePf/GLX/z+97//rLPOuvHGG5ctW5b3DgIiDUkwywHGTNdnmkWLFl199dVf/epX3/nOd2699dY9PT3Pec5z9ttvv6985St//OMfFy5cmPcOAtVEGlJglgOMme574czy5cv/+te/fvvb3z744IN33HHHiRMnPu1pT3vzm9/8uc997rLLLnvooYfy3kFgGCINKTDLAcZOV2Sau+666/zzz//EJz7xqle9as0111xrrbV22WWXI4444ic/+cndd9+d994BrRFpSIFZDjCGCvmIgIceeqi3t/ezn/3sHnvssfHGG0+cOPElL3nJBz/4we985zu33HLL8uXL895BoH0iDSkwywFGVfmzm2f0ruidMWXWvLxforlw4cIrr7zylFNOecc73vGsZz2rp6fnec973gEHHHDaaaddc801ixcvznPngBEl0pACsxxg5GW9g2bKrHm5JZmlS5fOnTv3m9/85nvf+97ttttu/Pjxm2666V577fWFL3zh8ssvf/TRR/PZLWD0iTSkwCwHGCH9zzMryms0582b94Mf/ODQQw+dMmXKaquttu66677uda876qijLrroov/85z+57RYwtkQaUmCWA3SiQDnmv//9789//vPPfOYzr3/969dff/1VV1118uTJH/3oR7/3ve/ddtttfX19uewV0KbeGSNyOBFpSIFZDtCGmivL8rjh//HHH//d73530kknTZ069ZnPfGZPT8+22247ffr0M8444y9/+cuSJUvGfI+AkSPSQNPMcoBm5X6HzFNPPXXdddd9/etff8973vP85z+/py8NpaIAACAASURBVKdniy222Geffb70pS/9/ve/X7BgwRjtBzAGRBpomlkO0FCuV5b19fXdeuut3/3udz/0oQ+97GUvmzRp0oYbbvjGN77xmGOOueSSSx544IEx2g9g7Ik00DSzHKBWnjnmX//6109/+tMjjzzyta997TrrrLP66qu/4hWvOOyww370ox/deeedY7MPQP5EGmiaWQ5QbegCszG5Q+aRRx759a9//fnPf/4tb3nL05/+9AkTJmy//fYzZsz41re+ddNNNy1btmz0dwEoHpEGmmaWA4y1RYsW/elPf5o1a9b+++//3Oc+t6enZ6uttpo2bdqpp5561VVXPfnkk3nvIFAAIg00zSwHGHXLly+/+eabv/3tb3/gAx/YYYcdJk6cuMkmm+y5557HH3/8L3/5y//973957yBQPCINNM0sBxgVd911149//OPDDz/8Va961ZprrrnWWmu95jWv+eQnP3nBBRfcc889ee8dUHgiDTTNLAcYGQ8++OCll1762c9+9k1vetNGG220yiqrvPSlLz3kkEPOOeecv//978uXL897B4GuItJA08xygDY98cQTV1555Ze//OV99933Wc96Vk9PzzbbbPPud7/7a1/72rXXXvvUU0/lvYNANxNpoGlmOUCzli5desMNN5x55pkHHXTQi170ovHjx2+22WZvf/vbTzzxxN/+9rePPfZY3jsIBCLSQNPMcoBGbr/99h/84Acf+9jHdtppp9VWW2299dbbbbfdjj766Isvvvjee+/Ne++AuEQaaJpZXlwPPrbk/kdV8Fq8xP0VhXPfffddfPHFRx999Otf//r1119/1VVX3WmnnT72sY99//vfv/322/v6+vLeQSANIg00zSwvrtp3lxNS3hONFY899thvf/vbk0466e1vf/tmm202fvz4F73oRQcddNCZZ555ww03LF26NO8dBJIk0kDTzPLiKpVKc+cvULFLp8nFU089dd11151++unvfve7n//85/f09Gy55Zb77rvvl7/85SuuuOKJJ57IewcBVqw4bptSqbTNcZ1uRqMhBWZ5cYk0KZROMzb6+vr+/ve/n3POOR/60If+7//+b5VVVtloo43e9KY3HXvssZdeeumDDz6Y9w4C1HCWBppmlheXSJNC6TSj55577rngggs+9alPveY1r1l77bXXWGONV73qVYcffviPf/zju+66K++9AxiOSANNM8uLS6RJoXSaEfTwww//6le/Ov744/fcc89NNtlkwoQJO+ywwwc+8IGzzz775ptvXrZsWd47CNAKkQaaZpYXl0iTQuk0nVi0aNFVV101a9as/ffff6utturp6Xnuc5/7zne+c9asWX/6058WLVqU9w4CdECkgaaZ5cUl0qRQOk1Lli1bdvPNN5999tkzZszYYYcdJkyY8PSnP/0tb3nL5z//+V//+tcPP/xw3jsIMHJEGmiaWV5cIk0KpdMMa/78+T/60Y8OP/zwV77ylWusscbaa6/92te+9sgjj/zpT3/6r3/9K++9Axg1Ig00zSwvLpEmhdJpaj3wwAOXXHLJscce+8Y3vnHDDTecNGnSy172sg996EPf/e53b731Vm+6BFIh0kDTzPLiEmlSKJ1mxYoVTzzxxBVXXPGlL31pn3322XLLLXt6ep7//Oe/5z3v+frXv37dddc99dRTee8gQB5EGmiaWV5cIk0KlWanWbp06V/+8pczzzzzoIMOeuELXzh+/PhnPvOZU6dOPemkk373u989/vjjee8gQAGINNA0s7y4RJoUKpFO09fXd/vtt3//+9//6Ec/utNOO6266qrrr7/+61//+s985jM///nP77vvvrx3EKB4RBpomlleXCJNChW409x3330/+9nPjj766N1222299dZbbbXVpkyZcuihh/7whz+cN29e3nsHUHgiDTTNLC8ukSaFitRpHnvsscsvv/zEE09829vettlmm40fP3677bZ773vf+81vfnPu3LlLly7NewcBuopIA00zy4tLpEmhurrTLF68+Nprr/3a1752wAEHbLPNNj09Pc9+9rPf8Y53nHLKKX/4wx8WLlyY9w4CdDORBppmlheXSJNCdVenWb58+d/+9rfvfOc7hxxyyEtf+tJVVlll44033mOPPY477rje3t6HHnoo7x0ECESkgaaZ5cUl0qRQxe8099xzzwUXXPDJT35yl112WWuttdZcc81Xv/rVn/jEJ84///x//vOfee8dQFwiDTTNLC8ukSaFKmCnefjhh3/5y18ef/zxe+655yabbDJx4sQdd9zx4IMPnj179l//+tfly5fnvYMA3WverCmlGp3HlkYK2GhgxJnlxSXSpFBF6DRPPvnkVVdddeqpp06bNm2rrbbq6enZeuut3/Wud331q1+9+uqrFy1alPcOAkTQO6M2zIxFrilCo4HRZpYXV7RIM3t6qVQqlSYfMSfvPSlS5dJpli1bdtNNN33rW9+aMWPG9ttvP2HChGc84xl77bXXCSec8Jvf/OaRRx4Z+10CiG0wz0yZVf0U+6GoMzqpRqQhBWZ5cYk0KdSYdZo777zzvPPOO+yww17xilesvvrq66yzzq677vrpT3/6oosu+ve//z02+wCQqP7UUhtnBgxcjzYaoUakIQVmeXGJNCnU6HWaBx544JJLLjnmmGN23333DTfccNKkSS9/+cs//OEPn3vuuf/4xz/6+vpG6ecCUGVlohkmrjT1oXaINKTALC8ukSaFGsFO88QTT/z+97//0pe+tM8++2yxxRY9PT3bbrvtgQce+I1vfOP6669fsmTJSP0gAFrRZFgZrUwj0pACs7y4RJoUqpNOs2TJkr/85S9nnHHG9OnTX/jCF44fP37zzTffe++9v/jFL86ZM2fBggUjOBsBaJdIA6POLC+uro40F8+cXPYYl+mnz28YaeacvH3FY1/qxp6Mzfb/2W5NSi11mr6+vttuu+173/veRz/60cmTJ6+66qobbLDB7rvvPnPmzF/84hf333//6M1GANol0sCoM8uLq2sjzYVTs55OOXVadqQ5fVrWp0ul0rQLKzd74xE7Zm12ZvBIc++991500UVHHXXU6173unXXXXf11VffeeedP/7xj5933nl33HHH2ExFADrhXhoYbWZ5cXVppBmMKFNnD3yx4iRMRfYYyjNlAabxF5vZbBdVbad59NFHL7/88i984Qt77bXXpptuOmHChBe/+MXvf//7zzrrrBtvvHHZsmW5zEYA2ueJZzDKzPLi6spI0391WVnwqI4fZdlj4Ivbz7yxajsDF5gNfHjgk01ttquqVCotXrz4mmuuOe200w444IDnPe95PT09z3nOc/bbb7+vfOUrf/zjHxcuXJj3TASgUw3eSzMQZ7yXBtpnlhdXN0aa/nMpO558cb1vlWWPgdwy/fSM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" alt="" />

再看一个函数的原型的例子

var obj = {name: 'jack'}
function getName() {
console.log(this.name)
} // 问题:Animal.call 方法来自哪?
getName.call(obj) //来自Function对象 console.dir(getName)
console.log(getName.__proto__ === Function.prototype) //true
console.log(Function.prototype.__proto__ === Object.prototype) //true

通过原型关系图理解

aaarticlea/png;base64,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PZiDtg4AAIAKWLJkybvvvnvttdcedthh66+/fi6XW3PNNQ844IBLL730pZdemjt3btIVbG0l6cEktHUAAABE0dLS8sknn9xxxx3HH3/8lltu2blz5xVXXHHXXXc9++yzn3jiiZ9++inpCgqQ9GAO2joAAABUff/99w8//PAZZ5yxww47LL/88l27dt1mm21OOumk++6774svvki6dsFIejAHbR0AAABSs2bNeu655y688MJ99tlnlVVW6dChwyabbJLP52+66ab//ve/TU1NSVcwHJIezEFbBwAAQNmiRYvefPPNq6++etiwYeutt14ul+vXr9/QoUOvvPLKV199dcGCBUlXMBaSHsxBWwcAADBac3PzRx99NH78+L/97W9/+MMfOnbsuNJKK+25557nnXfe008/PXPmzKQrWEkkPZiDtg4AAGCcr7/++oEHHhg1atSgQYO6d+/evXv3P/7xj6eeeuoDDzzw9ddfJ127KiLpwRy0dQAAAP3NnDnzqaeeOu+88/bYY4+VVlqpU6dOm2222d/+9rdbb731448/bm5uTrqCNULSgzlo6wAAABpasGDBq6++esUVVxx00EH9+vXL5XLrrbfe8OHDr7nmmjfffHPRokVJVzAZJD2Yg7YOAACgg6ampsmTJ990001HHnnkxhtv3KFDh759++6zzz4XXXTR888/P2vWrKQrmAokPZiDtg4AAJBVX3zxxb333nviiSdus802Xbt27dGjx4477njmmWc+/PDD33//fdK1SyOSHsxBWwcAAMiM6dOnP/HEE2edddYuu+yy4oordu7cecsttzz++OPvvPPOTz75pKWlJekKph1JD+agrQMAAKTXvHnzXnzxxUsuueSAAw5YY401crncBhtsMGLEiGuvvfbdd99dsmRJ0hXMGJIezEFbBwAASJElS5a8995711133YgRIzbccMO6urrVV199//33v+SSS1588cW5c+cmXcFsI+nBHLR1AACAJLW0tHz66ad33nnnCSecMHDgwC5duvTq1WuXXXYZM2bM448/Pn369KQrqBWSHsxBWwcAAKi1adOmPfLII2eeeeaOO+7Yo0ePrl27br311ieeeOK99977+eefJ107nZH0YA7aOgAAQNXNnj37+eefv/jii/fdd9++ffvW1dVtvPHGRxxxxI033jh58uSmpqakK2gKkh7MQVsHAACovEWLFr311lvXXHPN8OHD+/fvn8vlfvvb3x500EFXXHHFK6+8Mn/+/KQraCiSHsxBWwcAAKiA5ubmjz/++LbbbjvmmGM222yzTp069e7de/fddz/33HOfeuqpGTNmJF1BtLaS9GAS2joAAEBE33zzzYMPPnjqqaduv/32yy233LLLLjto0KBRo0bdf//9X331VdK1gwBJD+agrQMAAKj65ZdfnnnmmfPPP3/PPffs06dPx44dBwwYcPTRR48fP/6jjz5qbm5OuoIIQNKDOWjrAAAAUgsXLnzttdeuvPLKgw8+eO21187lcuuuu+6wYcOuuuqqN954Y+HChUlXEOGQ9GAO2joAAEBZU1PTBx98cPPNN+fz+U022aRDhw4rr7zy3nvvfeGFFz733HO//vpr0hVELCQ9mIO2DgAATDd16tT77rvv5JNP3nbbbbt167b88svvsMMOp59++oQJE7777ruka4dKIunBHLR1AABgnJ9++unJJ588++yzd9111xVXXLFz585bbLHFcccdd8cdd/zvf/9raWlJuoKoFpIezEFbBwAA+ps3b95LL7102WWXHXjggWuuuWYul1t//fUPPfTQf/3rX++8887ixYuTriBqhKQHc9DWAQC6K+St+obGpGuBGlu6dOn7779//fXXH3744b///e/r6upWW221wYMHjx079j//+c+cOXOSriCSQdKDOWjrAACtFfKWZVlWviB7QGNDvWVDJsyyzz777O677/773/++1VZbLbPMMj179tx5553/8Y9/PPbYYz/++GPStUMqkPRgDto6AEBrxSAninrtKdBLnguRLj/88MOjjz46evToP//5zz179lxmmWXq6+tHjhx59913NzaS2SFA0oM5aOsAAL21Rz3PXF0p5tn+YpvfI+yl05w5c1544YV//vOf++2336qrrlpXV7fRRhv99a9/veGGGyZNmrR06dKkK4i0I+nBHLR1AIDmXDN3bRGu+I/eQFf8C8s402Hx4sVvv/32uHHjDj300N/97ne5XG6ttdYaMmTIZZdd9vLLL8+fPz/pCiJjSHowB20dAKAv1zl4pQTnt6TTLwWiBlpaWqZMmXL77bcfe+yxm2++eefOnX/zm9/stttu55xzTqFQ+Pnnn5OuILKNpAdz0NYBABpzRL1ycmvPcrJpO/8giMr79ttvH3roodNPP/1Pf/rTcsst161bt+222+7kk0/+97///eWXXyZdO2iFpAdz0NYBABkXfPFMT3ILSHqBf0dcv/7667PPPnvBBRfstddeK6+8cocOHTbddNOjjjrqlltu+eCDD5qampKuILRF0oM5aOsAgOxSvXim+6osQUmOSb2KW7hw4euvv97Q0PCXv/xlnXXWyeVy66yzzsEHH9zQ0PD6668vXLgw6QrCFCQ9mIO2DgDIAsG5c2EunumOdolP6tknIvXMk83NzR9++OEtt9xy1FFHDRgwoGPHjn369Nlrr70uuOCCZ5555pdffkm6gjAUSQ/moK0DANLOnorcWU314pmu6FbcpCTKVWlOT3KBGH1u/Pbll1/++9//PuWUU7bbbrtll112ueWW+9Of/nTaaac99NBD3377bdK1A1pbSXowCW0dAJBO7dksX3As0WzPXuEvnlnaXKtjA8KoV9GgJ1phqs0s3owZMwqFwjnnnLP77rv37t27U6dOm2+++bHHHnvbbbdNmTKlpaUl6QoCbiQ9mIO2DgBIKb8FjuEvnim7Kot326XXjZHHtI138+fPf/nlly+//PIhQ4astdZauVzud7/73SGHHDJu3Li333578eLFSVcQCEDSgzlo6wCABAnvau75ozfQRTjPzn1VFueLt72yLVxGOkXPszwz+1fvXLp06aRJk2644YYjjjhio402qqurW3XVVffbb79//vOfL7zwwuzZs5OuIBAOSQ/moK0DAGqvsbFReuFMwTVXpOfihbp4pjfqic+cCzv9pt/Zd42Njffcc8/IkSPr6+uXWWaZFVZYYaeddho9evSjjz46bdq0pGsHxELSgzlo6wCAWirFrYa8O3YJpvDkgS7KxTNtl2ppbKhXi5Qyei3P/PHHHx977LF//OMfO++8c8+ePbt06bLVVlv9/e9/v+uuuz777DNOt4NOSHowB20dAFBTvrcXcF82U35plEgXzwy+x7o/feLdnDlzJk6cOHbs2MGDB6+22mp1dXUbbrjh4Ycffv3117/33ntLly5NuoJAtZD0YA7aOgCgtkpxSxi0xHdDEDw02sUzHSfiFcKtryw/N4Nn3y1ZsuSdd97517/+ddhhh62//vq5XG7NNdc88MADL7300pdeemnevHlJVxCoEZIezEFbBwDUmP9SSVfU81mlWdWLZ2ZeS0vLJ598cscddxx33HFbbLFF586dV1xxxV133fXss89+8sknf/rpp6QrCCSDpAdz0NYBALXmurWd+K8KUa8KF8/Mtu+//37ChAlnnHHGDjvssPzyy3fr1m3bbbc96aST7rvvvqlTpyZdOyAVSHowB20dAFBr8iWZtr+WgqB/LqzExTOza9asWc8999yFF1649957r7LKKh06dNhkk03y+fzNN9/83//+t6mpKekKAqlD0oM5aOsAgJprj2f+k3rFv8qvyuJ9jvYJb9GiRW+88cbVV189bNiwddddN5fLrb322kOHDr3yyitfe+21BQsWJF1BIO1IejAHbR0AUHt+Uc8z46cU9XTV3Nz80UcfjR8//uijj/7DH/7QsWPHPn367Lnnnueff/7TTz89c+bMpCsIZAxJD+agrQMAEiA/+06Q64Lunaebr7766oEHHhg1atSgQYO6d+/evXv3P/7xj6eeeuqDDz74zTffJF07INtIejAHbR0AkATJhTPF905obGws/VdHM2fOfOqpp84999w99thjpZVW6tSp02abbXbMMcfceuutH3/8cXNzc9IVBPRB0oM5aOsAgCQ4r6RS39Bov5Cm9rN3CxYsePXVV6+44oqDDjqoX79+uVyuf//+w4cPv+aaa956661FixYlXUFAWyQ9mIO2DgBIhOSimZqejtfU1DR58uQbb7zxyCOP3HjjjTt06NC3b9999933oosuev7552fNmpV0BQFTkPRgDto6ACAZ/vda0MDnn39+7733nnjiiVtvvXXXrl179Oix4447nnnmmY888sj333+fdO0AQ5H0YA7aOgAgIdpdaGX69OmPP/74WWedtcsuu/Tq1atLly4DBw484YQT7rzzzk8//bSlpSXpCgIg6cEgtHUAQFIyH/Xmzp374osvXnLJJfvvv/8aa6yRy+U22GCDESNGXHfdde++++6SJUuSriAAN5IezEFbBwAkJXs3yluyZMm777573XXXjRgxYoMNNsjlcmusscYBBxxwySWXvPjii3Pnzk26ggACkPRgDto6ACAx6Y96LS0tn3766Z133nn88ccPHDiwS5cuvXr12mWXXc4666zHH398+vTpSVcQQDgkPZiDtg4ASE4qr8oybdq0Rx555Mwzz9xxxx179OjRtWvXbbbZ5sQTT7z33nu/+OKLpGsHIBaSHsxBWwcA1JL95gr5QmshX9/QmPQ90WfPnv38889fdNFF++67b9++fTt06LDxxhsfeeSRN9544+TJk5uampKsHICKIunBHLR1AEDVie6dV9/QmFjAW7Ro0VtvvXXNNdcMHz58vfXWy+Vy/fr1O+igg6644opXX311/vz5yVQLQPWR9GAO2joAoDrar6yZiruiNzc3f/zxx7feeusxxxyz2QNrJ9wAACAASURBVGabderUqXfv3nvsscd555331FNPzZgxI5lqAag5kh7MQVsHAFRQiuLd119//eCDD5566ql//OMfu3fvvuyyyw4aNGjUqFEPPPDAV199lUiVAERXyFfkcELSgzlo6wCA+DzLM5O4xsovv/zy9NNPn3/++XvuuWefPn06duz4hz/84W9/+9v48eM/+uij5ubmmtcIQOWQ9ICQaOsAgIgSP/tuwYIFr7322pVXXjl06NC11147l8utu+66w4YNu/rqq994441FixbVqB4AaoCkB4REWwcAhJHo8sympqb//ve/N910Uz6f32STTTp06LDKKqvss88+F1544XPPPTdr1qwa1QNA7ZH0gJBo6wCAQEnGu6lTp953330nnXTStttu261bt+WXX36HHXY444wzHn744e+++642dQCQPJIeEBJtHQAQoLxKsyZn3/30009PPPHE2Wefveuuu6644oqdO3fecsstjzvuuDvuuOOTTz5paWmpfhUApA9JDwiJtg4ASNi8efNeeumlSy+99IADDlhzzTVzudz6669/2GGHXXvtte+8886SJUuSriCAFCDpASHR1gEAtbZ06dL33nvv+uuvP/zwwzfccMO6urrVV1998ODBY8eOnThx4pw5c5KuIID0IekBIdHWAQBV19LS8tlnn911110nnHDCVltttcwyy/Ts2XPnnXceM2bMY4899uOPPyZdQQCpR9IDQqKtAwCq4ocffnj00UdHjx690047rbDCCssss0x9ff3IkSPvueeezz//POnaAcgakh4QEm0dAFAZs2fPfuGFFy6++OL99ttv1VVXraur22ijjY444ogbbrhh0qRJS5cuTbqCALKMpAeERFsHAES0ePHit99+e9y4cYccckj//v1zudxaa601ZMiQyy+//JVXXpk/f37SFQSgEZIeEBJtHQCgqqWlZcqUKbfddtuxxx67+eabd+rUqXfv3rvvvvs555xTKBR+/vnnpCsIQF8kPSAk2joy4+fZS6bPomheFi1pTrqhwe3bb7996KGHTjvttO2333655Zbr1q3bdtttd8opp9x///1ffvll0rUDYAySHhASbR2ZYcEMSTc0tP7yyy/PPPPMBRdcsNdee6288sodO3YcMGDAUUcddcstt3z44YdNTU1JVxCAkUh6QEi0dWSGZVmTps6l6F3ogBOxcOHC119/vaGh4eCDD15nnXVyudw666zzl7/85aqrrnr99dcXLlyYdAUBoLX13P6WZfU/N+5m6GhgDto6MoOkZ0KhA66N5ubmDz744JZbbjnqqKM23XTTjh07rrzyynvttdcFF1zw7LPP/vrrr0lXEAA8mNMDQqKtIzNIeiYUOuDq+fLLL//973+ffPLJ22233bLLLrvccsv96U9/Ov300x966KFvv/026doBQBCSHhASbR2ZQdIzodABV9DPP//85JNPnnPOObvttttvfvObzp07b7HFFscee+ztt9/+v//9r6WlJekKAkAYJD0gJNo6MoOkZ0KhA45j/vz5L7/88mWXXTZkyJC11lorl8v97ne/O/TQQ8eNG/f2228vXrw46QoCQAwkPSAk2joyg6RnQqEDDmXp0qXvv//+DTfc8Ne//vX3v/99XV3daquttt9++/3zn//8z3/+M3v27KQrCACVQ9IDQqKtIzNIeiYUOuBAjY2Nd99998iRI+vr65dZZpkVVljhz3/+8+jRox999NEffvgh6doBQNWQ9ICQaOvIDJKeCYUO2OvHH3987LHH/vGPf/z5z3/u2bNnly5dttpqq7///e933333Z599lnTtAKBWSHpASLR1ZAZJz4RCB9za2jpnzpz//Oc/Y8eOHTx48GqrrVZXV/f73//+8MMPv/76699///2lS5cmXUEASAJJDwiJto7MIOmZUMzsgBcvXvzOO+/861//OvTQQ9dff/1cLrfmmmseeOCBl1122UsvvTRv3rykKwgAKUDSA0KirSMzSHomFEM64JaWlv/973+33377cccdt8UWW3Tu3HnFFVfcbbfdzj777CeffPLnn39OuoIAkD4kPSAk2joyg6RnQtG4A/7uu+8mTJhw+umn77DDDssvv3y3bt223Xbbk08++b777ps6dWrStQOA1CPpASHR1pEZJD0Tik4d8K+//vrss89eeOGFe++99yqrrNKhQ4dNN900n8/ffPPNH3zwQVNTU9IVBIBM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" alt="" />

原型继承:

function Animal() {
this.name = '动物'
} Animal.prototype.runs = function() {
console.log(this.name + ',跑起来了\n')
return this
} function Bird() {
this.name = '鸟'
}
Bird.prototype = new Animal() //让Bird的原型等于Animal的实例,因为new Animal中有__proto__指向Animal.prototype的指向(沿着原型链寻找),此处也可以写为Bird.prototype = Animal.prototype
Bird.prototype.fly = function() {
console.log(this.name + ',飞走了\n')
return this
} function Crow(name) {
this.name = name || '乌鸦'
}
Crow.prototype = new Bird()
Crow.prototype.drink = function() {
console.log(this.name + ',喝饱了水\n')
return this
} var crow = new Crow('一只可爱的小乌鸦')
crow.drink().runs().fly() console.dir(crow)

输出结果:

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPcAAAChCAIAAACUOb7uAAAa7klEQVR4nO2d/VMT197A/R8689yZ+2N+cPKLY2aemcwzU+7MHaVzL8M8Dtopc7UPXGbwaSQWmlYtVaQiApa0XMqtFL1PSVuBFiNyDQiBtkbU0MSGF6NQgfAmiEYSwLwYEkL2PD8srJt9OXvyJslyPsM48ezZ7zm7+ezJ2bO7Z3cUFRVVVlY2NTU9fvwYYDBiZEdBQYFCoVAoFAUFBZ2dnQRBRBdIgUx8NwBDZ21tzWg0dnZ2Xg+ns7Ozv79/bW1tqyu4NewgCOL58+ednZ1KpVKhUHR2dkYXSKFQVFVVtUOpqqrClicUo9E4ODi4xMXg4GB/f/9WV3Br2EF9mpiYKCgoKCgoiK7rcv78+aKiIsi609PT77///rlz56KpZiLxjzXnp8lkSr1jq2sSO9evX1/k5/r16+HZF9vyJCS7D5S0Tfq3ptKvGCqXlA8lIO4Ot9tN/efq1asKhaKpqSmKQG63u6Sk5MSJE06nk710cXHx2LFjn3zyycrKSvSV5WRam9NojWF9h16Z3TwWt+rEhbKysv9mUVZWJrjilStX5ubm5ufnOf+9cuVKePbFtry8tkUAAHCNavL+1DCakK1BJ2GWl5WVUaJPTEwoFIrKysroYtnt9o8++qi4uLi9vb2TxrVr106cOKFSqZ4+fRqXSrvHdKXNm2Zb1TJ1TJbrlEpdoppxa3OpbswtnI/B/Px8VlYWXfGsrKz5+XnBFVtaWqb5aWlpCc/+yvLwz1tFwixXKBRnz54lRXc6nQqFoqioKOpwNpvt6NGjJSUlOp2OVPz69esnT548evTo2Fg8Gkz3mK40R9lo2dDSqpZtoNQ5APBP6ypy0mQymXwvlceqlqmNZKdEvrdYOx32s+zQKV+t79Aplc26umy5TG0F09qcvXKZTCbfW6xf2Myr1Fn0xXvl8uxSw4LDos5Jk8nS8pvHyJD+aW1xVppMJt+r3EwCADgsjcqcKFS/dOkS3fJLly6hrBWD5fNtB/PaFsk0TVt1plRSPgSAf7KlMH23RCKV52lG/QAAMN9bckAulUik8oYhADhy0AJ0tmQqOl0bhQ2VpzeMAgAW+8oPyKUSye4DJb2M4/aV5f7JtpIDuyUSiVSe12DaqKJ/VJMnl0okuw9qOjWRHJM7zp49S4ru8XhMJlMsbTnJwMCAQqH48ssvSctra2sVCoXZbI4lJgAAAIeluZgm+Cav2nK3oThNqSM1dhgrsnK0C+TyNBWZ6raoNxLpYam23KFTyrPrLOE+ui3qjAqjn1ycQRrvNlakpeXUWdwAuI0V8mKDGwC3oVSlJV12W9RZ4T8vUaju8XgOHTpEKn7o0CGPx4OyVtSWL/aVpJMfF9vypJnVJhcAALh6jytaRsmPpvL08iEAhsolJaZXEThy0APMtxzY0NxvKklvGAVgtOFgSR+p53wL09RNy129hbvzNs4TFvtK0g+0zG8mzpNFVWdKI7Hc7XZTotfV1UXdL6ejUChqampIy2tqauIzruK2NubnqJqZkr+y3G+syNZOU+nT2myl3sHo0Szo8plnmWGW5+s2jwH3mF6tys7O3ivf+J2gd21oOTdS/cYKGZ3wTpB/wdKozFY2WiNq0Ts7O0nL0Qe+Ird84+QzXaEZcm2mHSRdAv6+EgmdvLZF4Oo9Lj9Q3jY07+fLQQsAgKtTkde2CIC/r+RAyzwAky2ZYSuEd1A2LPf3lWS2TFKpky2ZeZ2LwFROO3HY/OVBYwcAwOPxkKKTo+axXx5KiOUAgI0OS04FvVXks3xBl19scDMsn9ZmFxvCVQuzfFNOt6E4q8K44Hb7X6WGW8746DdWZDRydcnIXyC1PoreeSgUUiqVSqUyFAohrtLa2gqxvLW1NTw7V1+clubvK+E8I3VN9mkUmZkNQ36uHOFBXZ2KAy3zrt5Csk2fbMks7HUBHrgtn287WNjrcvUW0hInWzIjsdzpdJpMJrIVj2W8nE7iLCdxWBqVjbSzz1KjHwBWj2XDZ6tallFhIDU2VGQxJee2fKwxQ6ldAAC4x7RKOYLlwK1XyTcLf4W1uVRrjeHUdmBgYGBgAD2/Xq+/desWp+IGg6Gnpyc8u4DlwNWpkOZxjzC6egvTNZNcORhB/aaSg9XVx0tMZJ7Rhj+ll5t4POfpsZAHxnzLgfSNzs5iX3lkPRbqkmSM1z7pKBQKlUpVUVFx7tw5lUqV2CtBfmtjtnxjuNs/1qzKSpPJZGlZqs0zQKtaptbpi/fK6aekNDgtBw5DabZcJkvLb9Y3o7TlgDz2Nk5Yc5i9+9eF3W7v6elpbW1tCae1tbWnp8dut4dnF7IcgEVTQ55cKpFIpPID1SYXAEMNG//dPBtl5WAG9ZtKpLQGnzqvlOxOV7SFn37Szj5HNYr03Rt9qdGNg2i+t+TAbvK01RTRiNCORNzH8ujRo7q6umPHjh07dqy2ttZqjWWkL1ZiHWlMKdbW1pxOJ+clIafTKaIr/KaIxhx3CGdJcbaV5dsD16gmT7rZBUIBW45JFYY0mXJpVLcjiN9yDAZbjhE/2HKM+NnxFIMRO7gtx4gfbDlG/GDLMeIHW44RPylmuSQcejojGzyIYCkRVQk9M+fqcdko9OJiD5JyJMpy9pfH+BYhGahsEAMYZQmmIC6FVJi9lJGCtmPC4rArI4nQcsH9zM6PXk/RkEDLI0rnyyOhHRWceTi/WviXDbccJTO7VpFaTv9X8KCCZ0PcEM70bSJ9slsOhJRif4Y0h4J1ELScUQRfkwyHYTlncYwPEdnJzsw4WlCCiImttJyvfeJskjnhDAgpju8DX7UZASERYrGccycwckK2Gr4JnKEirXCqs8WWcy7iVIfPSHSPUcLCv3s+29h2wmHUXNBLdmaU3YsSbZsQseX8DWtYUySYASBYjhIHHpwvJqQOKNXmDMuOA9mHIPwI4ds0vp0DKRexUL5somQrRxJRLOdL4VwUheXw4Hx1QznGUISDeMyuM72USC2HBxc9W2y5YBsGzwmg+gKWlJzZYrE8urB8W4F4ZEIOIWw5Jwm0XLBJRvyq2GJFajliIh/sOtAbY872Fe4QZ0z2uvBskMiQRPRKiolkH0lkt2HsY4CzjYcUF8W3i3J8RicNu/L0D3xNL/ruha+4TURPiOUoLRnfIvZXyzYYpQXlk54zHbE+fJEjiolSIvWZszLRbVqk2y4mUuw+FgwmCrDlGPEDs/wFBiMKcFuOET/Ycoz4STHL+cYZIhogExxniGggIi6jFvCxkddZE1GCn6IQrjbfUkYK2o5hxkGpEt9aiNsF38nbgZS5KiThaa05vzb4F4miFDwzu1aRWk7/wCcf31ZI+A+8iAzGlsdKvCwHQkqxP/MtRamDoOWMIiiforYcsUR4Cjw99sypDn6KAlZtRkBIhEgNY2wC3xYBnr3BlwGxMttKcbDllnMu4vy2+IxE9xglLPzr5zvG2OahwFdbtvqc9rNDCWZjFLd9wE9RcDTegtXmDMuOA9uPQpbDd4tgbSEVEKyY+MBPUUR2qsAOK3gk8EWj8jAiQMqC1BluNue2bB/wUxQxWR5dWLi+7LLYhXKWBakbYsXECn6K4lUiH+w6wNtgyKZxbhF8P7CPAb7jXDAgylJRkuwjiZzfMSMz53cPKS6Krxnl+EQPC2mkQbisnBtFzwnfV5DStxX4KQqBDeE7ruApKGE5C2Jvl4QHzrBRbM52IMXuY8FgogBbjhE/+CkKjPjBbTlG/GDLMeInxSznG2dgD1nAgwiWElGV0DNHzTYcGIkj+CkK4WrzLWWkoO0Y4VIiqjN8B2JIUuaqkISnteb8auFfNtxylMzsWsVoFWecWAzGltNJdsuBkFLsz3xLUeogaDmjCMq5uFgeUcUEo2Eo8FMUsGozAkIixG45PAJ6fKw4G/wURWSnrZzHmKCjgvAdsfAjnC8OhgF+igJ2PwlfZM6w7Diw/cjKLxgwojgYOvgpishOFdhhBY8ERDjzC9qPEgSDn6KIyfIYw0KKYCdybj68DhgS/BTFq0Q+2HWg/svOA980OJA4uC2PhWQfSWR8Zrdk8EYO3XL0KsUxLGcQzt8NbHks4KcoBDaE77iCp8QC53axQakqhiTF7mPBYKIAW44RP/gpCoz4wW05RvykpOVr62Bkbk0/tNppCfvTD62OzK1tde0wSUdKWj7yeI0y+8HsWnAdPHGuUykjj7HomDASYjlBELdv3963bx85tmU2m+Mbn96Ksy3XD63GtzhMqhOx5c3NzWUsmpub6XmGhob+9re/jY2NEQQRv6q+gtFRYf8lolBM6hKx5Q6Ho7y8nK54eXm5w+GgMgSDwbKyso6ODsaKWq22tra2qKho586dxcXFXq+XIIgbN268+eabUqn0k08+WV5eHh8f//TTT/1+P7mKzWYrLS31+XyMUJTNDleITHnsWMeWY/iIpsfS3d1Nt7y7u5u+1OPxfPjhh+Pj44y1tFrtu+++OzU15ff7S0tLLRbL0NBQQUGB3W4PBAINDQ0XLlx49uzZ6dOn3W63Wq0eHh4eHh6uqalhV4DRcntWCWw5BkI0lvt8vurqalLx6upqRlvrcrkKCgo4LddqtfQUjUbT3t5OfiabbbvdfvLkyZmZmTNnzrS1tZnN5h9//JFdAWw5JiKiPPu8d+8eafm9e/cYiwKBwMmTJw0GAyMdxfIXL15UVlZ2dXV1dXVpNJpvv/2WHQdgyzEREqXloVDowoULFy5cCIVC7KVdXV3Z2dlTU1P0s0+25X19fUePHnU4HIFAoKam5tKlSwCAurq6L774wmazff/990eOHBkeHmbHZ4yUMyzHYywYBtGPJNpsNpvNxrkoGAxeu3Ztz5499JFEtuXBYFCj0cjlcqlUWlVV5fV6yWw5OTkul8tsNu/Zs2d6epodnxov96y+OopCBJhYCHZaVscXglFvFEaUpORVIQDAyGPua59YcQybVLUcg0EHW44RP9hyjPjBlmPED7Z8izH+8T/of/R0RjZ4EMFSIqoSeuaUAFuOCkNHtpqQDFQ2vnXZZQmmIC6FVJi9lJGCtmNSgG1n+cuxR/f/+pbn/vC48oj9xxb0FdGNhOehHxWceQQPoYjqgHjAsGv1KhtBzJSXzVSUu37tv5/51+CSk6+spGXbWe6bGB/9n4OBZ89sxz/aEssBXCmuz5CejGAdBC1nFEFv1Kk8MxXl9h9b3IMDD/bvw5ZHgLV5dPAb6w9Z1z7/4wVTrSUUDAEA5oxPPnuj7rM36up3NU7+NAMA6DvXf6vMWL+rceBf91vf/vdPH99a968HfUFTraVWcrF+V+PD1t/JdQEAPT09eXl5KysrkHJ9k5OjOYeCS86ZivLln39CrzCK5ZDODF8Gzj4DIyCkOL4PfNXm6/3DQz2uPm//scU3MT7xwfvrHg/nfkhmttLypgzt8uSK64n76kHdi1kXfemLWdcNZa//hf/WWaPusH6ia/Jf/3V5pm9Od1jvc/p+bx+3No0QIWJ1efWGsvfZ0HNyLRTLowbRcs5Fgm02PQXdY5Swgh16zmMM98vjg7V51No8CgBYexnsPW5wji8BAJYmllvf/rf6D1999kbd92+1+py+W2eNk70zc8Ynhk/vvnT4Ot7r8Tz16FW/kE0++TdnfBJLTVDaV3g2eihGZHZ6pAUxoiF2ctCLA+FOi0luiiSyfD2wrlf9MvztAyJE+Jy+jvd6SMvnjE/mjE9unTWSie4nnp6Pbtqti1tVcwgolvOlcC6KwnJ4cL66CR5jKU0SWR5cXb+h7J3omgr6gkOND5oytJyW+5y+wW+sv5y87XcFGDET2mNBAdI8I+YEUH0BS0rObLFYHmmclCCJLAcAPL4zX7+rsVZy0fDp3fbcG3yWBzxrhjN3ayUXqY4NGTPRlqOc26GsCOl/Qz5DiuBLhPRVOH8ZOPOIgG03khg1iAYL5uHsozMyQ/oM8Wp0UY5PbPn2Av59wzvZ7K4L3/mfYBsP6fmgbwjfcQVPSWmw5Rjxgy3HiB9sOUb8YMtfKy0tLR988AH5HDfmtSF+y58O2Rcsz15zodXV1eT8BXv27Ll58yY1Y0dElpvN5urq6kRWc7uQKMtRJg19PTy59/TJvaevudDq6mpyfg6r1XrkyBGXyyW4ChtsebxIlOWCk4ai47V7xzpsYx223hO3Bv/v/uoLPwBgeXLlYevvYzpb74lbvzUMbyROrRjV5t5jhoF/3fctrXrt3r7yfv2HN8m/vvJ+r90LAAi4A/cvj/QeM9yp+nVxNOIqoVx7Ii0nCMJkMlVUVAQCgaWlpf3790skEpVKRc25x54hFQDw4MGDd999VyKR7Nq1C1seFxLYY4FPGoqO1+69W222P1gkQsRs39zUzzMAgOXJlbvV5uXpFSJEzBgeL1ievXT4LBeHPXYvQRBPB+3UHbmMtjwUDI1eHXs6aCcIwmP3WhqGXzp8EdUH0XKyx5Kenj4wMEClM2bxZc+Qarfb8/PzR0ZGCIK4c+cOtjwuJNBy+KSh6Hjt3tGrY+uBdQCAa949on0UChLLkyvjNybp2RZHHbbuKfJzwBO43zQS8AQAy/LVF/77l0eCLzcmJxq/Mbk8Gf87Aqi2fGRkJD8/3263k+lsyxnzjZnN5qqqKrIfj3ss8SKxZ5+QSUPRoVu+MvtitG0stB5KCcsBAD6fr7S0lJpqD8Vyyuz+/n5seVxIrOXwSUMR8dq9D1t/X/evrwfWH12feDZsBwCwLXcveCwNwy8XfQRBzJsXRq+NhdZDAAD7/ee/t49TzxMF/ev3L4/YrYsEQbgXPL81DPuWEtJjodrygoKCxcWN+4QFLbfZbIcPH7bb7TMzM++88w62PC4kfCQRMmkoItRJpOHM3dnbc0SIAFyWAwCeDT+/U/Vr7zHD/csjAffGfbnUuSZ19ul9/vK3huHeYwaj2rw8FXFDjt4v37lzZ25u7oMHDwAANpstLS2Neo84qS/nDKmNjY1SqfTvf/97a2srtjwupMB4Ob3HgsFEwVZaTo3xUSN9D1t/ZyT+WvvbyvSLhFrOGHAk/x78wKwJ9VOASTlSoC3HYGIEW44RP9hyjPgRleXD3z7Q/a8+4EntN5TH/b7FYDB48eLF0dFR8r83b968evVqgl44nJxsseXNzc2IN7fQH4LmQ9By6vnoiCu6ydTUFHmTyf79+5eWYJVB4euvv7ZYLIzE+FpOEMTVq1fr6uqCwY0LYV6v9+TJk/39/YLrer3e0tJSqVQa93fMv2a22HLyLq7u7m7B6/8olgsSo+UEQXz++ec9PT2xXOSiQ10iTRyzs7PHjx9njO7bbLbCwkLByQ7MZnNZWVkgwJwRJOXYesupG13u3bvHtoeaElH9h68uyb8nLbc2j949b9Id1qv/8FV30c8Bz5rP6fv+rdbP3qjreK9nbfPqPXsqRvpcFzeUP937apC8Jup2u/Pz87u6uuC1ZVyuB7TLOtSipaWlc+fO/fOf/5TJZPv27SPfcUcQxO3btzMyMqgfAbPZLKFBJnLet+h0OsmbFqlb1TmL4KOpqYlx4QkAEAwGKysr+/r64NtrNpvZ66YiyWI5yYULFxgXSge/sd6u+DXoCwY8ge4PfqEs/yHr2tLEcnB1vfeEYd60QGZ2ji/1HjfQLWdMxUha7nnmvXvedPe8ibrsj2I5dZshCfn1c1r+9ttvX7582e/3f/fdd/X19QCAR48e5eXlMV6ACnjacvpdAIFA4PTp0zqdLhQKTU5O5uTkzM7OchbBid/vLykpGRkZYS/q7u6GrAgACIVC7e3t1GuHU5qktnztZbDno5uOR04Q3mOhZixiwLacMbGRz+m7nt9t/PyesdpMKY4OYluuUqnILjt165VWq+V81bqg5c+ePSsqKqK6FmR+ziIQK0wBX5H8Vfn444+dztSbx5lNsljO2WOhm73mXdN/eDN2y3WH9aYvLV3v/xzFUAzE8pcvX546dSrZLIe35RqNBrKxoVCI/gr5lGbrLYedfRKg71y/tWkkuLo++I314n9+F7vlHe/1vHT4HrSM/nLyNiV61P3y9vZ2cvjiypUrf/7zn/ksHxgYyM3NnZ+fZwSsr6/XaDSMY5tuudfrLSoq0uv1oVDo0aNHZBB0ywEAGo2G3bcmT6MFT3xxvzw+CI4kLk0sN2derZVc/K1+qKvwZz7LneNLX+/WUHM93zprBPyW+5y+UDB097zJcOZu0BcEMVj+/Pnz3NxcqVSqVqtVKhWf5eQr2998803GECRjXJLzvsWpqanc3NydO3dmZGSQw44RWT47O0u/9ZdKZA+8sMGWY1KDWMbLLRbL6dOnV1dXE1zHhIMtFz/BYLC+vv7hw4fkf9GvfXq93qqqKnxVCINJAbDlGPGDLY8YMU15vE3AlkcA/B1UmKQFW84B3/udBd4MkfrvOBYr2HIO+N7vDH9XBEj9dxyLlaS2PNne78z54hT6iqn+jmOxkuyWJ9X7nXEvPEVJdsuT5P3OJPB3C2KSlhSzPDnf74wtT3JSzPLkfL8ztjzJSTHLwRa93xnlPciYpCWpLU8VsOVJDrY8evCpZ6qALceIH2w5RvxgyzHiB1ueAjx//jw7O/vOnTtbXZFUJdmfbn49bMn7nQEAIyMjubm5gi/7jdpyrVZLPiid6o+0xUhyz1TxutiS9zsDAH744Yeurq6KioqEbv5rmI0xydl6y+HzJCKSiu939nq9FRUVT58+raysJGe/sNlsVVVV5APFhw8fJue1YrfHWq32zJkzGRkZ//jHP4qLi/Pz81dWVqhZLmQymVarpZ7YB9jy5LGcb55ERFLx/c42m+2LL74IBoNarbajo4NM+ctf/tLT0xMIBMifOCoz3VStVvvOO+/cvn2bzEzO6UXlXFlZ+fjjj+fm5jjX3Z6Ix/KUe7+zVqslPR4ZGTl79mwgEKDPqsV4SSLDco1GY7PZTp065XQ6yYmQnE6nSqWSSqUSiSQtLY2+G7HlyWJ57D2W1Hq/s8/nU6lU1DRab7311tzcHLrlWq2WzLy0tERaXl9fr1arA4EAewIwbPnWWx6Xs8+Ue7+zzWY7fvy4x+MBABAEoVarDQZDLJbX1NQ0NjYGAoGenp7MzExsOR2RjCSm3PudOzo66NOHGwyGsrKysbExtuX0edPJrgin5RMTE/v27ZNKpadOnSosLCQtZ68b6YaIA5FcFcLvd8ZASHbL8fudMbGT7JZjMLGDLceIH2w5RvzALH+BwYgC3JZjxM//A5pG30XeUVBDAAAAAElFTkSuQmCC" alt="" />

原型总结:

每一个构造函数都有一个和其对应的原型对象。

构造函数的 prototype 属性和其实例对象的 “__proto__” 属性指向同一个对象。

某构造函数的所有实例对象,共享一份原型对象。

所有的对象都可以通过 “__proto__” 属性,最终连接到 Object.prototype 对象。

构造函数用 prototype 来定义原型的属性和方法,实例对象用 “__proto__” 来查找原型的属性和方法。

当查找一个对象的属性或方法时,JS引擎会向上遍历其原型链,直到找到给定名称的属性为止。如果最终在 Object.prototype 对象仍然没有找到此属性或方法,则返回 undefined 值。

JavaScript中原型和原型链的更多相关文章

  1. js中原型和原型链

    1.原型: 在JavaScript 中,对象被表现为prototype . 原型其实一直存在于我们接触过的任何一个对象. 2. Tip:在函数对象中也存在__proto__属性,但是查看函数对象的原型 ...

  2. 关于JS面向对象中原型和原型链以及他们之间的关系及this的详解

    一:原型和原型对象: 1.函数的原型prototype:函数才有prototype,prototype是一个对象,指向了当前构造函数的引用地址. 2.函数的原型对象__proto__:所有对象都有__ ...

  3. 图解JavaScript中的原型链

    转自:http://www.jianshu.com/p/a81692ad5b5d typeof obj 和 obj instanceof Type 在JavaScript中,我们经常用typeof o ...

  4. 对Javascript 类、原型链、继承的理解

    一.序言   和其他面向对象的语言(如Java)不同,Javascript语言对类的实现和继承的实现没有标准的定义,而是将这些交给了程序员,让程序员更加灵活地(当然刚开始也更加头疼)去定义类,实现继承 ...

  5. 全面了解 Javascript Prototype Chain 原型链

    原型链可以说是Javascript的核心特征之一,当然也是难点之一.学过其它面向对象的编程语言后再学习Javascript多少会感到有些迷惑.虽然Javascript也可以说是面向对象的语言,但是其实 ...

  6. javaScript里的原型链

    原型对象也是普通的对象,是对象一个自带隐式的__proto__属性,原型也有可能有自己的原型,如果一个原型对象的原型不为null的话,我们就称之为原型链.原型链是由一些用来继承和共享属性的对象组成的( ...

  7. JavaScript继承与原型链

    对于那些熟悉基于类的面向对象语言(Java 或者 C++)的开发者来说,JavaScript 的语法是比较怪异的,这是由于 JavaScript 是一门动态语言,而且它没有类的概念( ES6 新增了c ...

  8. 一张图搞懂 Javascript 中的原型链、prototype、__proto__的关系 转载加自己的总结

    1. JavaScript内置对象 所谓的内置对象 指的是:JavaScript本身就自己有的对象 可以直接拿来就用.例如Array String 等等.JavaScript一共有12内置对象    ...

  9. JavaScript中的原型链原理

    工作中经常解除到prototype的概念,一开始错误的认为prototype是对象的原型链,其实prototype只能算是JavaScript开放出来的原型链接口,真正的原型链概念应该是__proto ...

随机推荐

  1. 【SPOJ 8222】Substrings

    http://www.spoj.com/problems/NSUBSTR/ clj课件里的例题 用结构体+指针写完模板后发现要访问所有的节点,改成数组会更方便些..于是改成了数组... 这道题重点是求 ...

  2. .Net Core 1.0.0正式版安装及示例教程

    使用VS Code 从零开始开发调试.NET Core 1.0 RTM. .NET Core 是一个开源的.跨平台的 .NET 实现. VS Code 全称是 Visual Studio Code,V ...

  3. 【BZOJ-3262】陌上花开 CDQ分治(3维偏序)

    3262: 陌上花开 Time Limit: 20 Sec  Memory Limit: 256 MBSubmit: 1439  Solved: 648[Submit][Status][Discuss ...

  4. 【BZOJ-4422】Cow Confinement 线段树 + 扫描线 + 差分 (优化DP)

    4422: [Cerc2015]Cow Confinement Time Limit: 50 Sec  Memory Limit: 512 MBSubmit: 61  Solved: 26[Submi ...

  5. BLOG搬家

    前段时间一直用的新浪blog,发现推送信息是否杂乱,所以特地投奔学长CSDN,外加之前颓废心过重,现在打算新面貌认真学习

  6. 【bzoj3674】 可持久化并查集加强版

    http://www.lydsy.com/JudgeOnline/problem.php?id=3674 (题目链接) 题意 维护并查集3个操作:合并:回到完成第k个操作后的状态:查询. Soluti ...

  7. BZOJ1018 [SHOI2008]堵塞的交通traffic

    本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000作者博客:http://www.cnblogs.com/ljh2000-jump/转 ...

  8. C# winform窗体设计-查询单个值

    查询单个值主要用于对成绩最低分,最高分,学生总数,学生性别等信息的统计 在查询单个值的时候用到了ExecuteScalar方法,连接以及语句方面,以及思路和对数据的增删改差不多 下面请看一段代码: s ...

  9. C#图像处理(各种旋转、改变大小、柔化、锐化、雾化、底片、浮雕、黑白、滤镜效果)

    http://blog.csdn.net/jiangxinyu/article/details/6222322/ 转载自CSDN

  10. linux安装Mac的默认Monaco字体

    Monaco字体是我最喜欢的编程字体,如果你想在linux上面安装,只需要在terminal中执行: curl -kL https://raw.github.com/cstrap/monaco-fon ...