ÐлгоÑиÑм поиÑка
ÐадаÑа ÑоÑÑÐ¾Ð¸Ñ Ð¸Ð· двÑÑ ÑаÑÑей.
У Ð½Ð°Ñ ÐµÑÑÑ Ð¾Ð±ÑекÑÑ:
let head = {
glasses: 1
};
let table = {
pen: 3
};
let bed = {
sheet: 1,
pillow: 2
};
let pockets = {
money: 2000
};
- С помоÑÑÑ ÑвойÑÑва
__proto__задайÑе пÑоÑоÑÐ¸Ð¿Ñ Ñак, ÑÑÐ¾Ð±Ñ Ð¿Ð¾Ð¸Ñк лÑбого ÑвойÑÑва вÑполнÑлÑÑ Ð¿Ð¾ ÑледÑÑÑÐµÐ¼Ñ Ð¿ÑÑи:pocketsâbedâtableâhead. ÐапÑимеÑ,pockets.penдолжно возвÑаÑаÑÑ Ð·Ð½Ð°Ñение3(найденное вtable), аbed.glassesâ знаÑение1(найденное вhead). - ÐÑвеÑÑÑе на вопÑоÑ: как бÑÑÑÑее полÑÑиÑÑ Ð·Ð½Ð°Ñение
glassesâ ÑеÑезpockets.glassesили ÑеÑезhead.glasses? ÐÑи Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ÑÑи ÑоÑÑавÑÑе ÑепоÑки поиÑка и ÑÑавниÑе Ð¸Ñ .
-
Ðобавим ÑвойÑÑво
__proto__:let head = { glasses: 1 }; let table = { pen: 3, __proto__: head }; let bed = { sheet: 1, pillow: 2, __proto__: table }; let pockets = { money: 2000, __proto__: bed }; alert( pockets.pen ); // 3 alert( bed.glasses ); // 1 alert( table.money ); // undefined -
С ÑоÑки зÑÐµÐ½Ð¸Ñ Ð¿ÑоизводиÑелÑноÑÑи, Ð´Ð»Ñ ÑовÑеменнÑÑ Ð´Ð²Ð¸Ð¶ÐºÐ¾Ð² неважно, оÑкÑда беÑÑÑÑÑ ÑвойÑÑво â из обÑекÑа или из пÑоÑоÑипа. Ðни запоминаÑÑ, где бÑло найдено ÑвойÑÑво, и повÑоÑно иÑполÑзÑÑÑ ÐµÐ³Ð¾ в ÑледÑÑÑем запÑоÑе.
ÐапÑимеÑ, пÑи обÑаÑении к
pockets.glassesони запомнÑÑ, ÑÑо наÑлиglassesвhead, и в ÑледÑÑÑий Ñаз бÑдÑÑ Ð¸ÑкаÑÑ Ñам же. Ðни доÑÑаÑоÑно ÑмнÑ, ÑÑÐ¾Ð±Ñ Ð¿Ñи изменениÑÑ Ð¾Ð±Ð½Ð¾Ð²Ð»ÑÑÑ Ð²Ð½ÑÑÑенний кеÑ, поÑÑÐ¾Ð¼Ñ ÑÐ°ÐºÐ°Ñ Ð¾Ð¿ÑимизаÑÐ¸Ñ Ð±ÐµÐ·Ð¾Ð¿Ð°Ñна.