NetworkApplication-09

Similar documents
Web データ管理 JavaScript (1) (4 章 ) 2011/12/7( 水 ) 湘南工科大学講義資料 Web データ管理 (2011) 阿倍 1/21

NetworkApplication-12

Java講座

PowerPoint プレゼンテーション

Si 知識情報処理

第 1 章 JavaScript/jQuery JavaScript とは JavaScript( ジャバスクリプト ) は HTML や CSS また PHP などでは実現することの難しい さまざまな効果を Web ページ上で実現できるスクリプト言語です 一時期 Web ページ作成に

Microsoft PowerPoint - ruby_instruction.ppt

PowerPoint プレゼンテーション

JavaScriptで プログラミング

JavaScript 演習 2 1

JavaScriptプログラミング入門 2.JavaScriptの概要

プログラミング入門1

Java Scriptプログラミング入門 3.6~ 茨城大学工学部情報工学科 08T4018Y 小幡智裕

メソッドのまとめ

NetworkApplication-11

JavaScript演習

コンテンツメディアプログラミング実習2

PowerPoint プレゼンテーション

<4D F736F F D20438CBE8CEA8D758DC F0939A82C282AB2E646F63>

Microsoft PowerPoint - prog03.ppt

Webデザイン論

Microsoft PowerPoint - CproNt02.ppt [互換モード]

C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ

PowerPoint Presentation

Prog1_6th

第7回 Javascript入門

デジタル表現論・第6回

memo

第5回 マインクラフト・プログラミング入門

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション

Microsoft PowerPoint - C言語の復習(配布用).ppt [互換モード]

スライド 1

PowerPoint プレゼンテーション

Prog2_12th

PowerPoint プレゼンテーション

Java 基礎問題ドリル ~ メソッドを理解する ~ 次のプログラムコードに 各設問の条件にあうメソッドを追加しなさい その後 そのメソッドが正しく動作することを検証するためのプログラムコードを main メソッドの中に追加しなさい public class Practice { // ここに各設問

JavaプログラミングⅠ

SmallTown 日付オブジェクト 日付オブジェクトを使ってページ内にいろいろな仕掛けをつくってみよう 1. 日付オブジェクトとは JavaScriptではいろいろなオブジェクトを扱えますが 日付オブジェクトもその一つです 手順としては 1 日付オブジェクトを作成する2そのオブジェクトから日にちや

◎phpapi.indd

PowerPoint Presentation

Microsoft PowerPoint - lec10.ppt

Microsoft Word 基_シラバス.doc

SmartBrowser_document_build30_update.pptx

第 8 回の内容 クライアントサイド処理 JavaScript の基礎

PowerPoint プレゼンテーション

Prog1_10th


ガイダンス

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 今日の講義講義で学ぶ内容 switch 文 論理演算子 条件演算子 条件判断文 3 switch 文 switch 文 式が case のラベルと一致する場所から直後の break; まで処理しますどれにも一致致しない場合 def

演習室の PC のハードディスクには演習で作成したデータは保管できません 各 PC の ネットワーク接続 ショートカットからメディア情報センターのサーバーにアクセスしてください (Z ドライブとして使用できます ) 演習名 使用するフォルダ 演習 1 Z: Web データ管理 演習

Microsoft Word - 3new.doc

Microsoft PowerPoint - 5Chap15.ppt

JavaScript演習

Microsoft Word - no06.doc

プレポスト【解説】

Javaプログラムの実行手順

JavaScript 1.! DOM Ajax Shelley Powers,, JavaScript David Flanagan, JavaScript 2

C 言語の式と文 C 言語の文 ( 関数の呼び出し ) printf("hello, n"); 式 a a+4 a++ a = 7 関数名関数の引数セミコロン 3 < a "hello" printf("hello") 関数の引数は () で囲み, 中に式を書く. 文 ( 式文 ) は

Microsoft PowerPoint - exp2-02_intro.ppt [互換モード]

memo

Java プログラミング Ⅰ 3 回目変数 変数 変 数 一時的に値を記憶させておく機能型 ( データ型 ) と識別子をもつ 2 型 ( データ型 ) 変数の種類型に応じて記憶できる値の種類や範囲が決まる 型 値の種類 値の範囲 boolean 真偽値 true / false char 2バイト文

Microsoft Word - Training10_プリプロセッサ.docx

ex04_2012.ppt

計算機プログラミング

情報処理演習 B8クラス

(1) プログラムの開始場所はいつでも main( ) メソッドから始まる 順番に実行され add( a,b) が実行される これは メソッドを呼び出す ともいう (2)add( ) メソッドに実行が移る この際 add( ) メソッド呼び出し時の a と b の値がそれぞれ add( ) メソッド

テキストファイルの入出力1

医療者のための情報技術入門第 9 回プログラムがはたらくしくみを学ぶ (2) 日紫喜光良 概要 1. はじめに- 具体例から ここから Javascript のプログラミング入門 次はどうする--

フローチャート自動生成ツール yflowgen の使い方 目次 1 はじめに 本ツールの機能 yflowgen.exe の使い方 yflowgen.exe の実行方法 制限事項 生成したファイル (gml ファイル形式 ) の開

Microsoft Word - no12.doc

Microsoft PowerPoint _2b-DOM.pptx

プログラミングA

Java言語 第1回

Webプログラミング演習

プログラミング入門1

3,, となって欲しいのだが 実際の出力結果を確認すると両方の配列とも 10, 2, 3,, となってしまっている この結果は代入後の配列 a と b は同じものになっていることを示している つまり 代入演算子 = によるの代入は全要素のコピーではなく 先をコピーする ため 代入後の a と b は

画像ファイルを扱う これまでに学んだ条件分岐, 繰り返し, 配列, ファイル入出力を使って, 画像を扱うプログラムにチャレンジしてみよう

PowerPoint プレゼンテーション

Web プログラミング 1 JavaScript (4) (4 章 ) 2013/7/17( 水 ) 日時 講義内容 4/10 ( 水 ) ガイダンス Web (1 章 ) 4/17 ( 水 ) HTML+CSS (1) (2 章 ) 4/24 ( 水 ) HTML+CSS (2) (2 章 ) 5

Microsoft Word - Cプログラミング演習(12)


kiso2-09.key

プログラミングA

C#の基本2 ~プログラムの制御構造~

メソッドのまとめ

目次 はじめに 4 概要 4 背景 4 対象 5 スケジュール 5 目標点 6 使用機材 6 第 1 章 C# 言語 7 C# 言語の歴史 7 基本構文 8 C 言語との違い 9 Java 言語との違い 10.Netフレームワーク 10 開発資料 10 第 2 章 Mono 11 Monoの歴史 1

プログラミング入門1

プログラミング基礎I(再)

オブジェクト指向プログラミング・同演習 5月21日演習課題

第1回 プログラミング演習3 センサーアプリケーション

基礎計算機演習 実習課題No6

プログラミングA

Method(C 言語では関数と呼ぶ ) メソッドを使うと 処理を纏めて管理することができる 処理 ( メソッド ) の再実行 ( 再利用 ) が簡単にできる y 元々はC 言語の関数であり 入力値に対する値を 定義するもの 数学では F(x) = 2x + 1 など F(x)=2x+1 入力値 (

Microsoft PowerPoint - prog04.ppt

デザイン戦略(コンピュータアニメーション) 2009年度春学期

前ページからの続き // テキストボックス02 id 属性で取得 // id 属性で取得する場合は一意に決まるので 何番目かの指定は不要 var textbox02elem = document.getelementbyid("text_box02_id"); if ("001" == statee

数のディジタル化

グーグル検索マクロの使い方

Transcription:

ネットワークアプリケーション 第 9 回 JavaScript によるクライアントサイドウェブプログラミング 石井健太郎 (423 研究室 オフィスアワー火 3 限 )

スケジュール 9 月 27 日第 1 回 TCP/IPプロトコルスイート 10 月 4 日第 2 回 Javaによるウィンドウプログラミング 10 月 11 日第 3 回 ネットワークアプリケーションのプログラミングモデル 10 月 18 日第 4 回 Javaによるネットワークプログラミング 10 月 25 日第 5 回 Javaによるネットワークプログラミング 11 月 8 日第 6 回 Javaによるネットワークプログラミング 11 月 15 日第 7 回 Javaによるネットワークプログラミング 最終課題 (1) 11 月 17 日第 8 回 ウェブプログラミングについて

スケジュール 11 月 22 日第 9 回 JavaScriptによるクライアントサイドウェブプログラミング 11 月 29 日第 10 回 JavaScriptによるクライアントサイドウェブプログラミング 12 月 6 日 第 11 回 JavaScriptによるクライアントサイドウェブプログラミング 12 月 13 日第 12 回 JavaScriptによるクライアントサイドウェブプログラミング 12 月 20 日第 13 回 JavaScriptによるクライアントサイドウェブプログラミング 1 月 10 日 第 14 回 JavaScriptによるクライアントサイド... 最終課題 (2) 1 月 17 日 第 15 回 まとめと演習

ウェブサイトの変更 大学のサーバでは認証をかけられないことがわかったので, 本講義専用サーバを用意しました 本講義専用サーバ IPアドレス : 150.89.250.195 ユーザ名 ログインパスワードの初期設定を講義で伝えますので, ログインしてパスワードを変更してください 方法は講義中に

ウェブページの公開 TeraTerm or FileZilla で public_html 以下のディレクトリを作成する ログインサーバ : 150.89.250.195 Z ドライブのローカルフォルダの内容をサーバ上に作成したディレクトリに転送する Z: Documents NetworkApplication-JavaScript サーバ上の public_html/networkapplication-javascript/ HTML Script CSS データを転送 HTML Script CSS 5

ウェブページの公開 ローカル サーバ

ウェブサイトの認証.htaccess に認証に関する設定を書く.htpasswd に認証情報を書く ( 実際は htdigest コマンドを使って生成する )

ウェブサイトの認証 htdigest コマンドの使いかたは下記のとおり

JavaScript 言語入門 <!doctype html> <html> <head> <meta charset="utf-8"> <title> こんにちは世界 </title> </head> <body> <script> var x; x ="Hello World"; alert(x); </script> </body> </html> 9

JavaScript C 言語と異なるところ インタープリタ言語 コンパイルをあらかじめ行わない ( 実行時にプログラムの意味を解釈し 実行される ) 変数の宣言時に変数の型 (char, string, int, float, double 等 ) を指定しない 変数の型は存在する すべての変数の宣言は var によって行う (var を省略することもできるがおすすめしない ) 型が自動的に変換される ( 楽だがミスがわかりにくい ) イベントドリブン ( 同時に複数のプログラムコードの箇所が並行して動く ) 10

データ型 文字列 数値 真偽値 (true / false) オブジェクト 配列 関数 組み込みオブジェクト undefined 定義されていない null なにもない 11

数値と演算子 数値 10 2.5-2.5 演算子 + - * / % += -= *= /= ++ -- 注意 + は 文字列の結合の演算子 でもある 左右のどちらかが文字のとき 文字に変換される var x; x = "1" + 2; alert(x); x = +"1" + 2; alert(x); のように単項演算子として使うと文字列を数値に変換する関数として使うこともできる 12

文字列 表現方法と特殊文字 " か ' で囲む x = "hello world"; x = 'hello world'; x = "it's a pen"; x = 'it 's a pen'; エスケープ文字は ( 円マーク ) 特殊文字の改行やタブは n t 13

制御構造 if 文 C 言語と同じ for 文 C 言語と同じ ( 変数の宣言は var に変わる ) for (var i=0; i<20; i++) { console.log(i); } while 文 do while 文 C 言語と同じ break 文 continue 文 C 言語と同じ switch 文 条件分岐の中にある比較演算子は二種類ある ===!== 型も含めて一致するか比較 ==!= 異なる型の場合には変換してから比較 14

関数 C 言語と異なり 返り値の型の宣言は不要 その代わり function というキーワードを書く 引数の型宣言も不要 var x = 100; var y = 200; function max(x, y) { if (x>=y) return x; else return y; } alert(max(x,y)); 標準的な書き方 var x = 100; var y = 200; var max = function (x, y) { if (x>=y) return x; else return y; } alert(max(x,y)); このような書き方もできる 15

配列 二つの表現方法 使い方 var student = new Array(3); student[0] = " 櫻井 "; student[1] = " 松本 "; student[2] = " 大野 "; for (var i=0; i<3; i++) { alert(student[i]); } var student = [" 櫻井 "," 松本 "," 大野 "]; for (var i in student) { alert(student[i]); } 配列の各要素を処理するには "in" が便利 16

オブジェクト ( 連想配列 ) キーと値の組 var hobby = new Object(); hobby[' 櫻井 '] = " ありません "; hobby[' 松本 '] = " 買い物 "; hobby[' 大野 '] = " 釣り "; //hobby. 櫻井 = ありません ; // でも OK var hobby = { 櫻井 :" ありません ", 松本 :" 買い物 ", 大野 :" 釣り " } 使い方 for (key in hobby) { alert(key + " の趣味は + hobby[key]); //alert(key + の趣味は + hobby.key); // では NG! key というメンバー変数へのアクセス } 17

オブジェクト ( 連想配列 ) 連想配列 の 配列 の例 var student = new Array(3); student[0] = { 名前 :" 櫻井 ", 趣味 :" なし ", 特技 :" ラップ " } student[1] = { 名前 :" 松本 ", 趣味 :" 買い物 ", 特技 :" 演技 " } student[2] = { 名前 :" 大野 ", 趣味 :" 釣り ", 特技 :" ダンス " } for (i in student) { alert(student[i][" 名前 "] +" の趣味は " + student[i][" 趣味 "]); } 18

JavaScript でデータを出力する方法 3 種類 console.log() alert() document.write() コンソールに書き出す アラートウインドウ ( ポップアップ ) に書き出す HTML の body に書き出す それぞれ JavaScript のコードを書いて動作を確かめてみよう

演習 来週から本格的に JavaScript を開発するにあたり, ウェブページの公開が必須となる. そこで, まず, ウェブページを作成して公開する演習を行う. また, ページを公開するということは, だれでも他人の課題の演習結果を見ることができてしまうので, 認証をかけることを実践する. 基本課題 ページのどこかに, 学生番号と氏名を明記する 自分の興味のあることがらについて,5 行以上の内容を記述する.( 自己紹介でもいいです ) 講義中に示したサイトの認証を実現する ユーザ名は自分のアカウント名 (e1n14xxx など ) とする パスワードはシステムのログインパスワードとは異なるものかつ他人から推測されないものを自由に決めてよい JavaScript の document.write() を使って,HTML ファイルに何か書き足してみよう 発展課題 画像の挿入をはじめ,HTML でできることを思い出して ( または調べて ), 魅力的なウェブページを作成する ウェブページを公開するとともに, その URL と認証情報 ( ユーザ名 & パスワード ) をテキストファイルに記載して, 次回の講義開始時までに, 提出フォルダ (X ドライブ ) にファイルで提出 X: IN 科専門 石井講師 ネットワークアプリケーション 第 8 回 ファイル名は < 学生番号 >.txt とする ( ハイフンなし ) 例 : N14999.txt

練習問題 1 第 1 版 ( 提出課題ではない ) サンプルプログラム : http://lss.oit.ac.jp/~t2015039/networkapplication-javascript/uranai1.html を自分のローカル環境で動くようにするブラウザで右クリックするとソースが見れるので これをコピー & ペーストする ( ダウンロードでも可 ) 占いの文面を5 件以上作成し 配列に格納し 乱数でその内の一つの文を選んで出力するようにして修正する 占いの文面に合う画像を表示するようにする 21

練習問題 1 第 2 版 ( 発展版 1) 以下のように 占いの候補リスト (u) を以下のような連想配列の配列で表現し 占い文 画像 ラッキーアイテムを記述するように変更し これらを表示するようにプログラムを修正する var u = [ {text:" 素晴しいです ", img:"peach.jpg", lucky:" もも "}, {text:" すごいです ", img:"orange.jpg", lucky:" みかん "}, {text:" ひどすぎます ", img:"apple.jpg", lucky:" りんご "}, ]; ヒント : 例えば 配列の最初の要素のラッキーアイテムは以下のように取得できる u[0]['lucky'] // これで " もも " が取得できる 22

練習問題 1 第 3 版 ( 発展版 2) 1. 毎回実行する度に 占い文が変化しないように 誕生日に応じて一意に決まる占い文が選択されるようにして下さい ヒント : 誕生日を parseint() で数値に変換し 月と日を加える等により 何らかの数値に変換し そして 配列の長さで割った余りの値で配列の要素を選ぶ 2. 誕生日に応じて一意に決まる占い文が毎日変化するようにして下さい ヒント : 本日の月 (1~12) と日付 (1~31) を取得する方法を調べ その値と誕生日の日付を加えて適当な数値を作る ( 方法は様々 ) 23