Enviar pesquisa
Carregar
5回目Java script構文
•
Transferir como PPT, PDF
•
0 gostou
•
514 visualizações
Takuya Shishido
Seguir
Vista de apresentação de diapositivos
Denunciar
Compartilhar
Vista de apresentação de diapositivos
Denunciar
Compartilhar
1 de 80
Baixar agora
Recomendados
Ppt007
Ppt007
Solur
1回目衝突判定
1回目衝突判定
Takuya Shishido
Wcan12
Wcan12
occhii105
Jawsug bgnr14
Jawsug bgnr14
Kahori Takeda
Pythonで作る自作デバッガLT資料
Pythonで作る自作デバッガLT資料
Yuya Masumura
flip the chabudai
flip the chabudai
Tetsuo Mitsuda
7
7
Shiho Sue
From A to B
From A to B
Tetsuo Mitsuda
Recomendados
Ppt007
Ppt007
Solur
1回目衝突判定
1回目衝突判定
Takuya Shishido
Wcan12
Wcan12
occhii105
Jawsug bgnr14
Jawsug bgnr14
Kahori Takeda
Pythonで作る自作デバッガLT資料
Pythonで作る自作デバッガLT資料
Yuya Masumura
flip the chabudai
flip the chabudai
Tetsuo Mitsuda
7
7
Shiho Sue
From A to B
From A to B
Tetsuo Mitsuda
Amazon ML(あるいは他社のサービス)の簡単なデモレベルはやったことあるけど、それっきりってエンジニアに聞いてほしいですね
Amazon ML(あるいは他社のサービス)の簡単なデモレベルはやったことあるけど、それっきりってエンジニアに聞いてほしいですね
Takuya Tachibana
JavascriptでLeap Motion事始め
JavascriptでLeap Motion事始め
Kenta Kowaki
【書籍紹介】よくわかるJavaScriptの教科書
【書籍紹介】よくわかるJavaScriptの教科書
株式会社ランチェスター
Blenderアーチストに捧げる10の言葉
Blenderアーチストに捧げる10の言葉
Tetsuo Mitsuda
ある戦いの記憶から探るPHPの闇と戦うコツ
ある戦いの記憶から探るPHPの闇と戦うコツ
FAL_A
“Septeni×Scala”勉強会#1資料_20150219_寺坂
“Septeni×Scala”勉強会#1資料_20150219_寺坂
ikuyaterasaka
20150116_techwomen
20150116_techwomen
amico8
Make TypingGame in JavaScript
Make TypingGame in JavaScript
undertale1
第5回アドオンモジュールセミナー発表資料
第5回アドオンモジュールセミナー発表資料
oreno
Web技術勉強会 20110611
Web技術勉強会 20110611
龍一 田中
Kyotopm発表資料20130330
Kyotopm発表資料20130330
Kiyo Tsunezumi
Jjug ナイト・セミナー くわっちょ 20140822
Jjug ナイト・セミナー くわっちょ 20140822
くわっ ちょ
第2回 IT講座 ゲームを作るって?
第2回 IT講座 ゲームを作るって?
Shunya Komori
1回目勉強会の説明
1回目勉強会の説明
Takuya Shishido
ワードプレスって、何? はじめは苦戦するかもしれないけれど、ちょっとずつでも理解すれば、アクションゲームよりもかんたんだよ
ワードプレスって、何? はじめは苦戦するかもしれないけれど、ちょっとずつでも理解すれば、アクションゲームよりもかんたんだよ
緑川 広岐
ワードプレスって、何? はじめは苦戦するかもしれないけれど、ちょっとずつでも理解すれば、アクションゲームよりもかんたんだよ
ワードプレスって、何? はじめは苦戦するかもしれないけれど、ちょっとずつでも理解すれば、アクションゲームよりもかんたんだよ
緑川 広岐
初心者目線でIo t
初心者目線でIo t
Makoto Nishimura
SIMD.js(ECMAScript 7)
SIMD.js(ECMAScript 7)
Hiroshi Kawada
2012.11.03 #odstudy Excel方眼紙に魂を削られない為のoffice講座
2012.11.03 #odstudy Excel方眼紙に魂を削られない為のoffice講座
真乙 九龍
WordCampOsaka2012 WordPressあるある
WordCampOsaka2012 WordPressあるある
Takashi Uemura
Weekend Androidのススメ
Weekend Androidのススメ
Suzuki Junko
第0回プログラミング講座
第0回プログラミング講座
happo31
Mais conteúdo relacionado
Mais procurados
Amazon ML(あるいは他社のサービス)の簡単なデモレベルはやったことあるけど、それっきりってエンジニアに聞いてほしいですね
Amazon ML(あるいは他社のサービス)の簡単なデモレベルはやったことあるけど、それっきりってエンジニアに聞いてほしいですね
Takuya Tachibana
JavascriptでLeap Motion事始め
JavascriptでLeap Motion事始め
Kenta Kowaki
【書籍紹介】よくわかるJavaScriptの教科書
【書籍紹介】よくわかるJavaScriptの教科書
株式会社ランチェスター
Blenderアーチストに捧げる10の言葉
Blenderアーチストに捧げる10の言葉
Tetsuo Mitsuda
ある戦いの記憶から探るPHPの闇と戦うコツ
ある戦いの記憶から探るPHPの闇と戦うコツ
FAL_A
“Septeni×Scala”勉強会#1資料_20150219_寺坂
“Septeni×Scala”勉強会#1資料_20150219_寺坂
ikuyaterasaka
20150116_techwomen
20150116_techwomen
amico8
Mais procurados
(7)
Amazon ML(あるいは他社のサービス)の簡単なデモレベルはやったことあるけど、それっきりってエンジニアに聞いてほしいですね
Amazon ML(あるいは他社のサービス)の簡単なデモレベルはやったことあるけど、それっきりってエンジニアに聞いてほしいですね
JavascriptでLeap Motion事始め
JavascriptでLeap Motion事始め
【書籍紹介】よくわかるJavaScriptの教科書
【書籍紹介】よくわかるJavaScriptの教科書
Blenderアーチストに捧げる10の言葉
Blenderアーチストに捧げる10の言葉
ある戦いの記憶から探るPHPの闇と戦うコツ
ある戦いの記憶から探るPHPの闇と戦うコツ
“Septeni×Scala”勉強会#1資料_20150219_寺坂
“Septeni×Scala”勉強会#1資料_20150219_寺坂
20150116_techwomen
20150116_techwomen
Semelhante a 5回目Java script構文
Make TypingGame in JavaScript
Make TypingGame in JavaScript
undertale1
第5回アドオンモジュールセミナー発表資料
第5回アドオンモジュールセミナー発表資料
oreno
Web技術勉強会 20110611
Web技術勉強会 20110611
龍一 田中
Kyotopm発表資料20130330
Kyotopm発表資料20130330
Kiyo Tsunezumi
Jjug ナイト・セミナー くわっちょ 20140822
Jjug ナイト・セミナー くわっちょ 20140822
くわっ ちょ
第2回 IT講座 ゲームを作るって?
第2回 IT講座 ゲームを作るって?
Shunya Komori
1回目勉強会の説明
1回目勉強会の説明
Takuya Shishido
ワードプレスって、何? はじめは苦戦するかもしれないけれど、ちょっとずつでも理解すれば、アクションゲームよりもかんたんだよ
ワードプレスって、何? はじめは苦戦するかもしれないけれど、ちょっとずつでも理解すれば、アクションゲームよりもかんたんだよ
緑川 広岐
ワードプレスって、何? はじめは苦戦するかもしれないけれど、ちょっとずつでも理解すれば、アクションゲームよりもかんたんだよ
ワードプレスって、何? はじめは苦戦するかもしれないけれど、ちょっとずつでも理解すれば、アクションゲームよりもかんたんだよ
緑川 広岐
初心者目線でIo t
初心者目線でIo t
Makoto Nishimura
SIMD.js(ECMAScript 7)
SIMD.js(ECMAScript 7)
Hiroshi Kawada
2012.11.03 #odstudy Excel方眼紙に魂を削られない為のoffice講座
2012.11.03 #odstudy Excel方眼紙に魂を削られない為のoffice講座
真乙 九龍
WordCampOsaka2012 WordPressあるある
WordCampOsaka2012 WordPressあるある
Takashi Uemura
Weekend Androidのススメ
Weekend Androidのススメ
Suzuki Junko
第0回プログラミング講座
第0回プログラミング講座
happo31
Semelhante a 5回目Java script構文
(15)
Make TypingGame in JavaScript
Make TypingGame in JavaScript
第5回アドオンモジュールセミナー発表資料
第5回アドオンモジュールセミナー発表資料
Web技術勉強会 20110611
Web技術勉強会 20110611
Kyotopm発表資料20130330
Kyotopm発表資料20130330
Jjug ナイト・セミナー くわっちょ 20140822
Jjug ナイト・セミナー くわっちょ 20140822
第2回 IT講座 ゲームを作るって?
第2回 IT講座 ゲームを作るって?
1回目勉強会の説明
1回目勉強会の説明
ワードプレスって、何? はじめは苦戦するかもしれないけれど、ちょっとずつでも理解すれば、アクションゲームよりもかんたんだよ
ワードプレスって、何? はじめは苦戦するかもしれないけれど、ちょっとずつでも理解すれば、アクションゲームよりもかんたんだよ
ワードプレスって、何? はじめは苦戦するかもしれないけれど、ちょっとずつでも理解すれば、アクションゲームよりもかんたんだよ
ワードプレスって、何? はじめは苦戦するかもしれないけれど、ちょっとずつでも理解すれば、アクションゲームよりもかんたんだよ
初心者目線でIo t
初心者目線でIo t
SIMD.js(ECMAScript 7)
SIMD.js(ECMAScript 7)
2012.11.03 #odstudy Excel方眼紙に魂を削られない為のoffice講座
2012.11.03 #odstudy Excel方眼紙に魂を削られない為のoffice講座
WordCampOsaka2012 WordPressあるある
WordCampOsaka2012 WordPressあるある
Weekend Androidのススメ
Weekend Androidのススメ
第0回プログラミング講座
第0回プログラミング講座
Mais de Takuya Shishido
会社を作ってみた
会社を作ってみた
Takuya Shishido
Game
Game
Takuya Shishido
Unity install
Unity install
Takuya Shishido
10回目nodejs
10回目nodejs
Takuya Shishido
9回目数学関数
9回目数学関数
Takuya Shishido
9回目プログラム全体の説明とタイトル画面
9回目プログラム全体の説明とタイトル画面
Takuya Shishido
8回目ファイル読込み(セーブデータ)
8回目ファイル読込み(セーブデータ)
Takuya Shishido
7回目テキスト・ステージ管理
7回目テキスト・ステージ管理
Takuya Shishido
5回目宿題解答
5回目宿題解答
Takuya Shishido
6回目スクロール
6回目スクロール
Takuya Shishido
4回目物理
4回目物理
Takuya Shishido
3回目キー入力
3回目キー入力
Takuya Shishido
2回目アニメ
2回目アニメ
Takuya Shishido
Svn information
Svn information
Takuya Shishido
インストールしてね!
インストールしてね!
Takuya Shishido
Mais de Takuya Shishido
(15)
会社を作ってみた
会社を作ってみた
Game
Game
Unity install
Unity install
10回目nodejs
10回目nodejs
9回目数学関数
9回目数学関数
9回目プログラム全体の説明とタイトル画面
9回目プログラム全体の説明とタイトル画面
8回目ファイル読込み(セーブデータ)
8回目ファイル読込み(セーブデータ)
7回目テキスト・ステージ管理
7回目テキスト・ステージ管理
5回目宿題解答
5回目宿題解答
6回目スクロール
6回目スクロール
4回目物理
4回目物理
3回目キー入力
3回目キー入力
2回目アニメ
2回目アニメ
Svn information
Svn information
インストールしてね!
インストールしてね!
5回目Java script構文
1.
JavaScript 第 5 回
2.
今日の内容は、今までなんとなくおざなりにしてきた JavaScript の構文の勉強です! これをすることで、皆さんも自力でいろいろ出来るはず!
3.
と言ってもただ単に色々言われても よくわからないうえにつまらない。
4.
ので、実際にプログラムを見ながら勉強していきましょう。 使うのはシューティングとして配ったプログラムです! もはやシューティングじゃない人もいますが。。。
5.
今日の授業は、構文を勉強しつつ、 ゲームのプログラムが全体でどうなっているのか すこしづつ見ていきましょう。
6.
1. HTML
7.
何は無くとも、といった感じですが、 これがないとブラウザは何も表示することが出来ません。 JavaScript か? と言われると、違います。 これはサーバから渡される、どう表示をすべきか が書かれたファイルです。
8.
皆さんにお配りした html ファイルはかなりシンプルです。 WEB
ページとなるともう少し複雑になりますが、 ゲームの場合ほとんどのものを JavaScript で描いてしまうので HTML で描くことはほとんどありません。 大事なのは canvas というものくらいです。
9.
HTML 5 とはなんなのか? 今まで決めていなかった、あったら便利を再整理したもの! Flash
は良く参考にされています。 ある意味 Flash を亡き者にするために決められたものです。 それくらい Flash というのは良く出来ていました。
10.
HTML 5 で新しく追加された大きな機能 canvas
( 描画機能 ) audio ( 音声機能 ) web socket ( 通信機能 ) video ( 動画再生機能 ) storage ( ファイル保存機能 )
11.
HTML 5 で新しく追加された大きな機能 どう考えても、ゲーム向きな機能ばかりでないです?
12.
ただし、まだブラウザ毎に実装されていたりされていなかったり! audio に至っては Apple
がなんとなく拒絶気味。 3D 表示機能の webGL は Microsoft が乗り気でない( DirectX の競合) なので、実際に動くのかどうか、よくよくテストをしましょう。
13.
ちなみに対応されているかどうか、 簡単に調べる方法はないの? それが、 Modernizr.js です!
14.
2. Modernizr.js
15.
これはいわゆる、ライブラリというやつです。 便利な機能をいつでもどこでも使えるように整理されたもの! 世の中にはこういった便利なものを 無料で使えるようにしてくれる人がいるのです。
16.
どこでつかわれているの? Main.js function enviromentCheck()
17.
function enviromentCheck() { var isCanvasSupport
= Modernizr.canvas; var isAudioSupport = Modernizr.audio; return isCanvasSupport && isAudioSupport; } 対応しているかチェックしたいもの 対応していないものがあった場合、 このゲームは動かせないのでチェックが必要です!!!
18.
環境が満たされているか 満たされていれば、 GameStart() 満たされていなければ何もしない。
19.
if 文 if (
何か正しくなる条件 ) { // 何かやりたいこと } { で始めて } で終わるのがルール きちんと囲まれているかわかりやすくするために 中身の部分は1段階そろえて隙間を空ける
20.
if ( 何か正しくなる条件
) { // 何かやりたいこと } else if ( さらに何か条件 ) { } else { // その他。どの条件にもハマらなければここ }
21.
試しに皆さんで書いてみましょう。
22.
Shooting.html をどこか適当な場所にコピーして、 <script src=“test.js”></script> と追加して、他の
~.js の部分を消してください。 そして、同じフォルダ内に test.js を作りましょう。
23.
test.js に書くこと
24.
value の値を色々変えてみてください! ex) value =
false; value = 0; value = -10; value = “test”; value = “”;
25.
どうです? なんとなく想像通りです?
26.
では次はこう変えてみましょう。
27.
これはどうでした?
28.
じゃあどうすれば良いのか。 JavaScript には、 == と
=== があります!
29.
ちなみに私が皆さんにお配りしたものは 大体の場所が == となっています。 知らなかったわけではないですよ。。。 ほとんどの場合、問題にならないからです。 それに
=== という書き方は他のプログラミング言語では 一般的ではありません。 なのであえて == を選んで書きました。 気になる人は修正したらいいんじゃないかなー。
30.
変数
31.
ところでいまさらですが、 var value =
false; って何を意味するんでしょうか?
32.
もはや当たり前な気もしますが、 var value =
false; と書いてあれば、 value は false になります。 value = 0; と書けば value は 0 になります。 value = “test” と書けば、 test という文字になります。
33.
var は初めて使う場合に付けます。 var value
= 0; var value = false; // さらに付けるのはあまりよろしくない。 ちなみに実は初めて使うときも実は var つけなくても良いです。 ですが、ろくなことにならないので、必ずつけましょう。
34.
文字列
35.
先ほど、 var value =
“test”; は文字になる、と言いました。 さりげなく。
36.
コンピュータというのは文字をどう扱っているか? 実は、 A という文字は
65 なのです! … どういうこと?
37.
こう書いてみましょう。 画面にはなんて表示されます?
38.
どういうことかというと、 プログラムは文字というのを理解出来ないので、 65 という数字を、文字と認識しなさい、と言われた時だけ、 A と画面に表示するようにしているのです。
39.
そして皆さんが書いたこれは、 0 番目の文字は 数字的にいくつとして扱っているかを教えてもらう ということ!
40.
興味あれば document.writeln(“1”.charCodeAt(0)); を書いてみてください。 意外に面白いですよ。
41.
ちなみにここから “ ”文字化け がおきる仕組み、想像できます?
42.
世の中には文字コードという いわゆる文字のフォーマットがあります。 フォーマット A ”
”で書かれた、 日 という文字。 数字では 26412 です。 フォーマット A …と認識して読取ってみると ? 26412 => “ ”日 なので、画面に 日 と表示 フォーマット B …と認識して読取ってみると ? 26412 => “œ�” なので、画面に œ� と表示
43.
試しに実際に文字化けを起こさせてみましょう。 document.writeln("<p></p>"); document.writeln(" 日本語 "); を追加した後、 Chrome
で、 ≡ をクリック。 ツール → エンコード → UTF-8 …を選択してみると ?
44.
下から順ということで、次は Ground.js を見てみましょう
45.
今回の見どころはここです!
46.
配列 (Array)
47.
配列とはなにか 一定のルールに従ったたくさんのものを1つの塊として扱う方法
48.
” ”例えば、 数字
というルールに従ったたくさんの集まり 1, 2, 5, 53, 12, 24, 3.1415…. ” ”例えば、 文字列 というルールに従ったたくさんの集まり “Resource/Image/Player.png”, “Resource/Image/Enemy.png”, “Resource/Image/Shot.png”, これらをまとめて扱うのにすごく便利!
49.
でも、ほんとにこれ使う? …何のためにあるのか良くわからないよ ?
50.
実は、配列というのは for 文という、まとめて処理する方法とワンセットです! 参考書とかには必ず別々の機能であるかのように紹介されますが、 for 文無しの配列というのは基本ありえません!!!
51.
for 文
52.
先ほどの test.js にこう書いて実行してみましょう
53.
i を 0
から始めて i が 10 になるまで i を 1 ずつ増やす
54.
後はこれをブレークポイントを置いて ステップ実行しながら追いかけてみましょう
55.
ちなみにこう書くと改行されます。 HTML なので rn
等は使えません。
56.
つまり と書いたのと同じことになります。
57.
ではここで。 こう書くと画面には何が表示されるでしょうか?
58.
配列はデータが順番に並んでいて、 array[ 取得したいデータの番号 ] という形になります。 fileList[1]
というのは “ Resource/Image/Enemy.png” と同じです。
59.
ちなみに、 array.push( 何か ); で配列の最後に何かを入れることが出来ます。
60.
ところで、 と同じならなぜそう書かないのか? と思いませんでした? そんなあなたは優秀です。
61.
理由1 何個も同じものを書くのはしんどい。。。 3個くらいなら頑張りますけど、 100 とか
1000 とかはしんどい。
62.
理由2 File A File B Enemy.png
使わなくなったよー! … …忘れずに2か所を修正出来る ?
63.
ここを消せば、 下は修正しなくていい! 配列で管理しておけば
64.
これでもうこの部分が何をしているかなんとなくわかるのでは?
65.
でもここだけわからない。
66.
関数
67.
これを書いてみて、ブレークポイントを置いてテストしてみましょう
68.
もしこう書きなおしたら何が起きると思います?
69.
実際動かしてみると、どうです? 1行にすべて表示されてしまって見づらくないですか? せっかくなのでこれを改行表示してみて下さい。
70.
こう書くのが楽ですよねー
71.
というところで今日の授業は終わりです。 基礎的な部分しか出来ていませんが、 これだけ理解できれば プログラムを書くにあたって困ることはありません! プログラムの大半は for 文と
if 文と配列です。 そしてそれらをまとめて関数にすればすごいプログラム完成です。
72.
宿題1! 以下の条件を満たすプログラムを次回までに書いてきてください。 1. 数字が 100
個ある配列を作ってください 2. それを全部出力してください 3. ただし、出力する部分は関数にしてください 4. 数字は改行して出力してください
73.
解答フォーマット
74.
宿題2! ある n が引数で与えられた時に それが素数であるかどうかを判定する関数を実装してください
75.
解答フォーマット例
76.
宿題3! フィボナッチ数列の n 番目の数字を出力する関数を実装してください。 ただし、
n の数字は引数で与えられるものとする。 フィボナッチ数列 an = an-1+ an-2 となるような数列 1, 1, 2, 3, 5, 8, …
77.
解答フォーマット例
78.
宿題 4 ! n
の高さのハノイの塔の解法を出力するプログラムを実装してください。 n は引数で与えられ、出力のルールは 1 => 3 といったものを改行しつつ出力すること。 特にフォーマットは準備しません。
79.
宿題は全部できれば理想ですが、 出来なければ出来るところまでで大丈夫です。 2つ目位までは簡単に解けるので実装してきてください。
80.
おわり
Baixar agora