planetproto
Version:
A Workshop for understanding JavaScript prototypes
33 lines (23 loc) • 1.04 kB
Markdown
prototypeにおける配列とオブジェクト
---------------------
配列とオブジェクトについては、あなたが期待している動作にはならないかもしれません。
配列を修正した場合にどうなるか見てみましょう:
```js
var alien = {
skills: ['morph']
};
var zorg = {};
zorg.__proto__ = alien;
zorg.skills.push('clone');
console.log(zorg.skills);
//=> morph, clone
// これは期待通りです
console.log(alien.skills);
//=> morph, clone
// この結果は期待はずれかもしれません。ただし、実際にこの動作は正常です。
// なぜなら上のコードはprototypeの配列自身を修正しているからです。
```
配列やオブジェクトを修正した場合、これらの修正はそのオブジェクト自身に施されます。
問題
---------
問題を解くために050.jsというボイラープレートファイルが用意されています。このファイルに問題を解く為の説明などが含まれています。