この文書の現在のバージョンと選択したバージョンの差分を表示します。
両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン 次のリビジョン 両方とも次のリビジョン | ||
ch_syntax [2020/07/11 04:53] klab [タイマーによる実行] |
ch_syntax [2020/07/11 04:57] klab [プロパティの参照・書き換えと親子関係] |
||
---|---|---|---|
ライン 345: | ライン 345: | ||
</code> | </code> | ||
- | {{:pasted:20180103-210551.png}} | + | {{:pasted:20180103-210551.png?150}} |
配列に入っている要素の数は、**要素数?**で調べることができる。次のプログラムでは、配列に3個の数値を入れた後で、要素数を画面に表示している。画面には3が表示される。 | 配列に入っている要素の数は、**要素数?**で調べることができる。次のプログラムでは、配列に3個の数値を入れた後で、要素数を画面に表示している。画面には3が表示される。 | ||
ライン 357: | ライン 357: | ||
**書く**を使うと、配列の末尾に新しい要素を追加することができる(要素数は1多くなる)。また、**上書き**を使うと、配列の指定位置の要素を書き換えることができる(要素数は変わらない)。**消す**を使うとオブジェクトを指定して、**位置で消す**を使うと要素の位置を指定して、要素を削除することができる。 | **書く**を使うと、配列の末尾に新しい要素を追加することができる(要素数は1多くなる)。また、**上書き**を使うと、配列の指定位置の要素を書き換えることができる(要素数は変わらない)。**消す**を使うとオブジェクトを指定して、**位置で消す**を使うと要素の位置を指定して、要素を削除することができる。 | ||
- | {{:pasted:20180103-210606.png}} | + | {{:pasted:20180103-210606.png?250}} |
次のプログラムでは、3つの要素が格納された配列の末尾に要素を追加し、3番目の要素を上書きした後、2番目の要素を削除し、要素数を画面に表示している。画面には3が表示される。 | 次のプログラムでは、3つの要素が格納された配列の末尾に要素を追加し、3番目の要素を上書きした後、2番目の要素を削除し、要素数を画面に表示している。画面には3が表示される。 | ||
ライン 385: | ライン 385: | ||
</code> | </code> | ||
- | {{:pasted:20180103-210625.png}} | + | {{:pasted:20180103-210625.png?500}} |
ライン 402: | ライン 402: | ||
</code> | </code> | ||
- | {{:pasted:20180103-210642.png}} | + | {{:pasted:20180103-210642.png?400}} |
子のオブジェクトは親のオブジェクトが持っていたプロパティ(値やメソッド定義)をすべてそのまま引き継ぎ、親と同じように扱うことができる。この仕組みを利用して、タートル、ボタン、配列など、さまざまな標準オブジェクトをプロトタイプとして持つオブジェクトを必要なだけ作って利用できるわけである。 | 子のオブジェクトは親のオブジェクトが持っていたプロパティ(値やメソッド定義)をすべてそのまま引き継ぎ、親と同じように扱うことができる。この仕組みを利用して、タートル、ボタン、配列など、さまざまな標準オブジェクトをプロトタイプとして持つオブジェクトを必要なだけ作って利用できるわけである。 | ||
ライン 418: | ライン 418: | ||
</code> | </code> | ||
- | {{:pasted:20180103-210705.png}} | + | {{:pasted:20180103-210705.png?400}} |
ただし、上で説明したように、子のオブジェクトに同じ名前のプロパティが見つかった場合はそちらが使われるので、親の同名のプロパティは参照されなくなる。たとえば、次の場合はObjBのプロパティが参照されるので、「180」が表示される。 | ただし、上で説明したように、子のオブジェクトに同じ名前のプロパティが見つかった場合はそちらが使われるので、親の同名のプロパティは参照されなくなる。たとえば、次の場合はObjBのプロパティが参照されるので、「180」が表示される。 |