JavaScript 制御構造 新しいページはコチラ

提供: yonewiki
移動: 案内, 検索
(オブジェクト 生成 new)
(オブジェクト 生成 new)
577行: 577行:
 
</syntaxhighlight>
 
</syntaxhighlight>
 
[[Media:JavaScript SeigyoKozo object.html|実行結果サンプル]]
 
[[Media:JavaScript SeigyoKozo object.html|実行結果サンプル]]
 +
 +
サンプルプログラムの前半では、オブジェクトを独自に作成し、生成して利用している例。後半では、JAVA Scriptの機能としてあらかじめ準備されているオブジェクトDateの生成して、利用する例を示しました。今回のオブジェクトは関数オブジェクトと呼ばれるものを作っています。自分で定義した関数をオブジェクトとして、new というキーワードを付与することで、代入演算子 = の左に記述した任意に定義したオブジェクト名を定義したオブジェクトと同じ構造を持つオブジェクトとして生成したことになります。オブジェクトのひな型と同じものをもった別名のオブジェクトで、このオブジェクト自体にもまた、新たな設定値を保有させたりすることができます。別名のオブジェクトに対する各種変更は、ひな型のオブジェクトに影響を及ぼしません。複雑な構造のオブジェクトを準備することで、プログラムで何度も使う設定値と少しいじりたい部分とを混ぜ合わせるかのような使い方を繰り返せるようになり、コード記述の労力も減るし、これぞプログラムの仕組みの醍醐味でもあり、コンピュータに複雑な動作を手軽に指令することができる構造です。
 +
 +
 +
次にあらかじめ準備されているDateオブジェクトを生成し、任意に定義したオブジェクト名にDate型の仕組みや機能を持たせてみました。そのオブジェクト名のそのものを出力しようとすると現在の時刻が帰ってきます。Dateオブジェクトのようにwindowオブジェクトより小さい機能のオブジェクトは幾つか用意されていますので、あらかじめ準備されたオブジェクトの使い方を理解していくこともJAVA Scriptの勉強をすすめるということに直結しますので、後で使い方を説明していけたらいいなと思っています。
 +
 +
 +
JAVA Script全体が持つ機能を紹介することは辞典一冊くらいの情報になりますので、こんな小規模なサイトでどうこうできる内容ではなさそうですが、コツコツと記載していきたいと思います。当サイトでは、管理人の趣味によって各種プログラミング言語の使い方を無謀にも一個人が全部を網羅しようとしています。気長にみまもっていただければと思います。ちなみに更新はあっちの言語、こっちの言語とフラフラふらふらする予定です。好きなことを好きなだけまとめる。それが、たまたま閲覧した人の理解の助けになり、日本が発展する。そのようなことがあったのなら管理人の幸福につながるということです。発展したことで誰かがまたどこかで誰かを幸せにするということです。
 +
 +
 +
と、まぁこんなような無駄な発言もちょくちょく出てくるのがこのサイトの泥臭いというか、閑話休題的なものになればよいなぁと思いつつ記述しています。プログラミングを学ぶ上でのこころざしのようなものについても伝授していけたらいいなぁと思っています。学びえたプログラムが悪用されるのも嬉しくないです。だから自分の人格を少しでも押し付けて、良い力に変わっていくことについてもちょくちょく触れたいと思います。
 +
 +
 +
さてさて、独自に作った関数のオブジェクトのプログラムの中でthisというキーワードを使ってしまいました。コレは次の項目以降で説明する予定のものですが、作ったオブジェクト自身を示すキーワードで、その自分自身のプロパティ値(属性値)として、.Numというものを新しく定義すると共にそのプロパティに5000という値を持たせることを意味していて、新たに生成した別名のオブジェクトもこのプロパティ値を持ち、引き継がれます。
 +
 +
 +
自分で作ったオブジェクトよりも、もともと用意されているDateオブジェクトが持つ機能のほうがかなり高度で、生成した時点で現在の時刻を出力してくれる機能を持っているという点においても超越したオブジェクトになっているところが注目すべき点でもあり、あらかじめ準備されたオブジェクトが持つ機能の有用性や複雑さ、重要さを示しているといえます。このようなオブジェクトをさらに外包的に機能追加して、自分自身で作るオブジェクトを作りこむというのがJAVA Scriptの使い方のひとつと言えるでしょう。サンプルプログラムはしょせんサンプルプログラムです。でも、真摯にひとつひとつを理解していくには避けて通れないしょうもないプログラムでもあります。こういう機能があるということ自体は、こういったしょうもないプログラムを通して初めて理解できるし、応用していけるものです。基礎の理解手段はそれぞれの人によって異なるとは思いますので、ここで示したサンプルがどれほど有用であるかは未知数です。どれだけの人がここを見て学び、プログラムの初歩的なエッセンスを理解し、どこか遠くの世界へ飛び立っていくのか楽しみですよね。今日時点では誰一人にも役に立っていないと思われます。
 +
 +
 +
いいんです。いつか、いつの日か実を結ぶ。そういうことでしょう。C言語の記事とかはもう実を結んでいるかもしれませんし。なにげに、wiki自体は25万PageViewを超えました。25万って、けっこういろんな人がここにたどり着き始めている感じです。ちょこちょこ更新していくくらいのやる気は出ますね。このWebsite全体では軽く150万PageViewを超えています。こつこつ積み上げたいろんなものがありますので、勉強の合間にちょっと寄り道できるくらいの情報量があったりします。これくらいのPageViewのサイトは日本中にあると思いますが、懇切丁寧にオリジナリティを求めた記事になっているところだけは真っ当に更新していると自負するところです。セコイ方法で、コピペや自動収集でまとめサイトを作り上げるのではなく、より役に立つ形式に変換していっているつもりです。
 +
 +
 +
難しい部分だったので、ずいぶんとたとえ話や、閑話休題で骨休めをできるようにはしたつもりですが、いかがだったでしょうか?オブジェクトというものをなんとなく理解し、生成する方法について理解を得られたでしょうか?お口に会いましたでしょうかね。
  
 
=== delete 消滅 ===
 
=== delete 消滅 ===

2016年2月14日 (日) 00:00時点における版



個人用ツール
名前空間

変種
操作
案内
ツールボックス