• 検索結果がありません。

JavaScript( 言 語 )とは 情 報 システムのプログラミング ソースコード 記 述, 外 部 ファイル 保 存, コンパイル,テスト,デバッグ... 大 変 な 作 業 もっと 手 軽 なプログラミング 特 別 な 言 語 処 理 系 は 不 要! Webブラウザだけで 実 行 可 能

N/A
N/A
Protected

Academic year: 2021

シェア "JavaScript( 言 語 )とは 情 報 システムのプログラミング ソースコード 記 述, 外 部 ファイル 保 存, コンパイル,テスト,デバッグ... 大 変 な 作 業 もっと 手 軽 なプログラミング 特 別 な 言 語 処 理 系 は 不 要! Webブラウザだけで 実 行 可 能"

Copied!
25
0
0

読み込み中.... (全文を見る)

全文

(1)

1

(2)

JavaScript(言語)とは

•  情報システムのプログラミング

→ソースコード記述,外部ファイル保存,

 コンパイル,テスト,デバッグ...

→大変な作業

•  もっと手軽なプログラミング

→特別な言語処理系は不要!

Web

ブラウザだけで実行可能

 (実際は,

HTMLファイル内or外部ファイル

 として記述保存)

2

(3)

1990

年代: 

JavaScript

 は不遇

•  Java言語とは全く異なる,簡易型プログラミング(スクリプト= 台本)言語。コンパイラではなくインタープリタ。 •  オブジェクト指向型スクリプト言語。C言語に似た手続き型言 語のようなスタイルで書かれる。 •  NetScape社でサーバ負荷軽減のために開発。 •  90年代後半は,セキュリティの脆弱性,ブラウザによって 挙動が異なるなど,問題の多かった言語 3

(4)

2005-: JavaScript

は脚光

•  2000年頃から

–  AmazonやGoogleといった企業が採用 2005年 Google Mapの登場により状況が一変 ・ユーザ満足度(ユーザエクスペリエンス)を重視した  リッチクライアントに対応したWebサイトが続々登場 ・サーバからクライアントへの転送データ量の減少  直感的な操作が可能

 Gmail, Googleサジェスト, Amazon Web Service,   ドラッグアンドドロップ, タブページ, Widgetなどなど

↑入力値チェックなどにも利用

(5)

Ajax (Asynchronous JavaScript and XML)  Webアプリケーションモデル 従来のWeb アプリケーションモデル Webサーバー データベース、バックエンド処理、 レガシーシステム サーバーサイドシステム ユーザーインターフェース ブラウザー Httpリクエスト HTTP(s)通信 HTML+CSS データ ユーザーインターフェース Ajaxエンジン ブラウザー データベース、バックエンド処理、 レガシーシステム WebまたはXMLサーバー サーバーサイドシステム XMLHttp リクエスト 非同期制御 HTTP(s)通信 XMLデータ HTML  +CSSデータ JavaScript コール ブラウザーによって Ajaxエンジン自体や、 呼び出し方法が 異なる 二 重 構 造 非同期実現

(6)

クライアント サーバー クライアント サーバー 従来のWebアプリ(同期→ユーザが待たされる) Ajax Webアプリ(非同期→ユーザが快適) ユーザー側の活動 ユーザー側の活動 ユーザー側の活動 システム処理 システム処理 データ 送信 データ 送信 データ 送信 データ送信 クライアント側処理 データ 送信 データ送信 データ送信 データ送信 ユーザー側の活動 入力 表示 入力 表示 入力 表示 入力 表示 データ送信 待ち時間がある L 待ち時間がない J サーバーサイドの処理 サーバーサイドの処理 サーバーサイドの処理 サーバーサイドの処理 時間軸  ▶ Ajaxエンジンが 通信を担当する

(7)

HTML

 →

Webページの

骨格

みを担当。表現力は

の文書

と同程度。

  CSS

 

Webページの

デザイ

を担当。通常は

HTM

L

と組み合わせて用

いる。

  JavaScript

 

Webページを

動的

ものにする。通常は

HTML

と組み合わせて

用いる。

HTML

CSS

JavaScript

違い

JavaScript CSS JavaScript CSS HTML 外部ファイル

(8)

JavaScript

実行

(9)

JavaScriptコンソール起動方法

•  WebブラウザーにはJSコンソールが付与。

JSスクリプトを実行し確認できる。

•  F12(開発者ツール)を押す。

その後

Consoleタブを選択。

•  最下行がJSスクリプト入力画面

•  実行:Ctr+Enter or 右下の↓をクリック。

それでは

Webブラウザーを起動して

F12を押してください。

9

(10)

JavaScriptの書き方

•  HTMLファイル内に書く方法 –  <head>タグ内に以下のように記述 –  ex1.html <script type="text/javascript"> <!--  ここにスクリプトを書く //--> </script> •  別のテキストファイルに書く方法 •  ex2.html, ex1.js

<script type="text/javascript" src="ファイル名.js"></script>

(11)

内容

•  alertメソッドとconsoleオブジェクト •  変数・データ型 •  演算子,console.assertメソッド •  関数 •  document.writeメソッド •  promptメソッド •  演習問題1 •  条件分岐 •  繰り返し •  parseInt関数とparseFloat関数 •  演習問題2 •  演習問題3 11

(12)

alertメソッド

•  ポップアップウィンドウに指定したメッセージを表

示するメソッド

•  デバッグに利用可能

–  正式にはwindow.alertだが,「window.」は省略可能 12 alert + ( + 表示するテキスト + + ) ; alert(‘Hello, World!’);

(13)

consoleオブジェクト

•  デバッグ用のコンソール出力メソッドを提供 –  JavaのSystem.out.printlnメソッドに相当 –  Rubyのputsメソッドに相当 •  右クリックのポップアップメニューからエラー,警告,メッセー ジ(情報),ログの表示切替が可能 •  IE9以降はconsoleオブジェクトのメソッドを利用したデバッグ を推奨 13 consoleオブジェクトのメソッド 説明 console.log(message) メッセージをコンソールに出力 console.info(message) 情報アイコン付きでメッセージを コンソールに出力 console.warn(message) 警告アイコン付きでメッセージを コンソールに出力 console.error(message) エラーアイコン付きでメッセージ をコンソールに出力

(14)

変数・データ型

•  変数宣言は

var

を用いる

– 変数の長さは1文字以上

– 変数の最初の文字に使えるのは,英字,アンダー

スコア(

_),ドル記号($)

•  ○ $total,_firstName,top100

– 空白文字と(_と$以外の)特殊文字は使えない

•  × 5to10,first name,#total,world!

(15)

変数・データ型

•  基本データ型は

数値

文字列

論理値

3種類

– ex3.html

•  数値

•  文字列

•  論理値

15 var num = 1; console.log(num); num = 3.14 console.log(num);

var message = ‘Hello, World!’; console.log(message);

var bool = true; console.log(bool); bool = false;

(16)

演算子(よく使われるもの)

•  ex4.html,ex5.html,ex6.html •  算術演算子 –  +(加算),-(減算),*(乗算),/(除算),%(余剰) –  ++(インクリメント),--(デクリメント) •  論理演算子 –  &&(論理積),||(論理和),!(否定) •  比較演算子 –  <(小なり),<=(以下),>(大なり),>=(以上) –  ==(等しい),!=(等しくない) •  代入演算子 –  =(代入),+=(加算),-=(減算),*=(乗算) –  /=(除算),%=(余剰)

•  console.assert(条件, メッセージ)

–  条件が満たされない場合にメッセージを表示 16 p q p && q

true true true

true false false false true false false false false

p q p || q

true true true

true false true

false true true

false false false

p !p

true false false true

(17)

関数

•  再利用可能なJavaScriptコードのかたまりに名前を

つけたもの

•  ex7.html function 関数名(引数) { 定義内容 return 戻り値; } 17 関数名(引数); var num = 関数名(引数); 定義方法 呼び出し方法

(18)

document.writeメソッド

•  document.write(引数)-引数をHTMLとして表示させる

•  ex8.html

18

var str = "Hello, World";

document.write("<p>" + str + "</p>");

(19)

prompt

メソッド

•  prompt(引数)-引数をメッセージとして表示し,ユーザからの入力情報 (文字列)を取得するメソッド •  正式にはwindow.promptだが,「window.」は省略可能 •  ex9.html 19

var value = prompt("値を入力してください."); alert(value);

document.write('<h1>promptメソッド</h1>'); document.write('<h1>' +value + '</h1>');

(20)

演習問題1

•  promptメソッドとdocument.writeメソッドを用

いて,ユーザから入力されたテキストと文字の

色に応じて,表示内容を変化させる

JavaScript

プログラムを書きなさい

20

(21)

条件分岐

•  ex10.html, ex11.html

•  if文

•  switch文

21 if (条件1) { 文1; } else if (条件2) { 文2; ・・・・・ } else { 文N; } 条件の部分には, 論理値(true or false) が入る switch (テストデータ) { case マッチデータ1: 文1; break; case マッチデータ2: 文2; break; default: 文3; break; } break文を使って他の選択肢が 実行されないようにする マッチする選択肢が なかったときに実行

(22)

繰り返し

•  ex12.html

•  for文

•  while文

22 for (初期化; テスト; 更新) { アクション; } 初期化; while (テスト) { アクション; 更新; }

(23)

parseInt関数とparseFloat関数

•  parseInt(引数)

– 引数で文字列を渡すと数値に変換

•  parseFloat(引数)

– 引数で文字列を渡すと浮動小数点に変換

•  ex13.html

23

(24)

演習問題

2

•  演習問題1を拡張して,指定した文字列と色

を,指定した回数表示する

JavaScriptプログ

ラムを書きなさい

(25)

演習問題

3

•  3択クイズのJavaScriptプログラムを作成しなさい –  document.writeメソッドで,クイズの問題と選択肢を表示しなさい –  promptメソッドにより番号を入力し,正解か不正解かをdocument.write メソッドで表示しなさい •  3択クイズの例: 25

参照

関連したドキュメント

[r]

情報 システム Web サービス https://webmail.kwansei.ac.jp/ (https → s が 必要 ).. メール

教職員用 平均点 保護者用 平均点 生徒用 平均点.

SFP冷却停止の可能性との情報があるな か、この情報が最も重要な情報と考えて

(現場盤) 無線機 既設のWebカメラ及びPHSで情報共有することで作業継続可能。 速やかな対応が可能 輸送容器蓋締付. 装置

本研究科は、本学の基本理念のもとに高度な言語コミュニケーション能力を備え、建学

本研究科は、本学の基本理念のもとに高度な言語コミュニケーション能力を備え、建学

本研究科は、本学の基本理念のもとに高度な言語コミュニケーション能力を備え、建学