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

HTML5プロフェッショナル認定試験 レベル2ポイント解説無料セミナー

N/A
N/A
Protected

Academic year: 2018

シェア "HTML5プロフェッショナル認定試験 レベル2ポイント解説無料セミナー"

Copied!
68
0
0

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

全文

(1)

HTML5

認定試験

2

ポ ン 解説無料セミ ー

株式会社富士通 ー ン メ

抜山雄一

(2)

設立

1977

6

30

資本金

3

億円 全額

富士通株式会社

売上高

81

億円

2014

年度

従業員

427

2016

3

月末現在

事業内容

人材育成・研修 ー

(

公開 ー

1,250

年間

80,000

名受講

個人

客様向

ン教室 富士通 ー ン

関係会社

株式会社富士通 ー ン

沖縄 研修 ー

・研修 ー

株式会社富士通 ー ン

・ タ

人材派遣

出資会社

株式会社

ーン・

開発

事業所

関連施設

東京・名古屋・大阪・沖縄

5

拠点 約

40

教室

900

名以上 定員数

富士通 ー ン メ

紹介

.会社概要

関西事業所

/LC

品川

LC

名古屋事業所

/LC

品川本社

沖縄事業所

/LC

.富士通 ー ン メ

が目指す

ICT

人材を支え 人材育成

ー あ

(3)
(4)

JavaScript

Ecma International

W3C

標準化

JavaScript

基本文法

Ecma International

標準化

ECMA-262

DOM API

Web API

W3C

標準化 担当

間 互換性 あ 程度

動的型付

言語

言語 あ

不要

言語

PHP

同様 動的

型付

実行可能

JavaScript

Web

閲覧

実行

Node.js

実行 ン ン 使用

Web

ー 上

行可能

(5)

JavaScript

ー ョン

ECMAScript 3

1999

12

月公開

try-catch

例外処理 正規表現

追加

ECMAScript 5

2009

12

月公開

2011

改訂版

5.1

公開

strict

JSON

追加

ECMAScript 6

2015

2015

6

月公開

ー演算子

追加 本 ー

ン以降

ン名

公開時 西暦 採用

1

新 ー

ン 公開

予定

試験範囲

ECMAScript 5.1

追加

文法

!!

ECMAScript2015

使う時

対応状況 注意

(6)

参考 最新技術を使うため

1

Can I use

<<http://caniuse.com/>>

(7)

参考 最新技術を使うため

2

Mozilla Developer Network

<<https://developer.mozilla.org/ja/>>

(8)

参考 最新技術を使うため

3

TypeScript

<<http://www.typescriptlang.org/>>

JavaScript

ンタ

ECMAScript2015

記述

(9)

開発 ー

タ編

Atom

<<https://atom.io/>>

Brackets

<<http://brackets.io/>>

Visual Studio Code

(10)

開発 ー

各種

F12

ー 押

開発 ー

(11)

2.1.1 JavaScript

文法

2.1.1 JavaScript

文法

重要度

★★★★★★★★★★

10

出題種別

知識問題

ン 問題

記述問題

説明 望

JavaScript

概要

演算子

配列

制御文

関数

型・

(12)

分類

値例

string

'LPI', "FLM"

number

10, 20

boolean

true, false

object

new String("")

1.

var str1 = "FLM";

//

2. var str2 = new String("LPI");

//

(13)

1.

var str1 = "FLM";

//

2. var str2 = new String("LPI");

//

3.

4. console.log(str1);

5. console.log(str2);

6. console.log(str1.substring(0, 1));

7. console.log(str2.substring(0, 1));

型 暗黙的 変換

(14)

演算子

演算子

説明

<

左辺 右辺

小 い

<=

左辺 右辺以下 あ

>

左辺 右辺

大 い

>=

左辺 右辺以上 あ

==

左辺 右辺 値 等 い

!=

左辺 右辺 値 等

===

左辺 右辺

ータ型 値 等 い

!==

左辺 右辺

ータ型

値 等

1.

var num1 = 10;

2. var num2 = "10";

3.

4. console.log(num1 == num2);

// true

5. console.log(num1 === num2);

// false

(15)

問題

1

1.

var str1 = "FLM";

2.

var str2 = new String("FLM");

以下 変数

str1

str2

宣言

選択肢

実行結果

true

表示

すべ

選び

A) console.log(str1 == str2);

B) console.log(str1 === str2);

C) console.log(typeof str1 == typeof str2);

D) console.log(str1 instanceof String);

(16)

解答

1

1.

var str1 = "FLM";

2. var str2 = new String("FLM");

以下 変数

str1

str2

宣言

選択肢

実行結果

true

表示

すべ

選び

A) console.log(str1 == str2);

B) console.log(str1 === str2);

C) console.log(typeof str1 == typeof str2);

D) console.log(str1 instanceof String);

E) console.log(str2 instanceof String);

typeof

演算子 変数 型 返

str1

string

str2

object

instanceof

演算子

boolean

判定

(17)

特殊数値

説明

Infinity

number

型 無限 表

-Infinity

NaN

number

型 非数

Not-A-Number

null

型 空 表

undefined

型 未定義 表

1.

var nan = NaN;

2. console.log(typeof nan);

// number

3.

console.log(nan + 10);

// NaN

4.

console.log(nan.hoge);

// undefined

5. console.log(parseInt("a"));

// NaN

NaN

Infinity

typeof

使う

number

!

(18)

問題

2

1.try {

2. console.log(5 / 0);

3.} catch (e) {

4. console.log("catch");

5.} finally {

6. console.log("finally");

7.}

以下

実行結果

表示

すべ

A)

ー 発生

何 表示

(19)

解答

2

1.try {

2. console.log(5 / 0);

3.} catch (e) {

4. console.log("catch");

5.} finally {

6. console.log("finally");

7.}

以下

実行結果

表示

すべ

A)

ー 発生

何 表示

B) NaN

C) Infinity

D) catch

E) finally

除算

Infinity

(20)

ベー

ン タン 生成

拡張可能

ン タン

ータ

処理

引 継

String

new

ン タン 生成

LPI-Japan

(21)

動的 拡張

1. Date.prototype.getJaFullYear = function () {

2. return this.getFullYear() + "

";

3. }

4. var now = new Date();

5. console.log(now.getJaFullYear());

拡張可能

仕様 分

(22)

prototype

追加

ン タン

greet

Person

new

ン タン 生成

Yuichi

Nukiyama

ン タン

greet

追加

greet

使用

場合

(23)

1. function Person(x, y) {

2. this.name = x;

3. this.age = y

4. }

5. Person.prototype.greet = function() {

6. console.log("I'm " + this.name + this.age + " years old");

7. }

8.

9. var me = new Person("Yuichi", 10);

10. me.greet();

タ 関数

定義

(24)

参考

ECMAScript2015

class

作成

1. class Person2 {

2. constructor(x, y) {

3. this.name = x;

4. this.age = y;

5. }

6. greet() {

7. console.log("I'm " + this.name + this.age + " years old.");

8. }

9.}

意味

function

使用

定義 同

OO

言語経験者

(25)

問題

3

1.function Employee() {

2. this.name = "foge";

3. this.dept = "Development";

4. this.work = function() {

5. console.log("do test");

6. }

7.}

8.Employee.prototype.manage = function() {

9. console.log("manage");

10.}

11.var e = new Employee();

以下

実行

e

自体 定義

すべ

選択

A) name

B) dept

(26)

解答

3

1.function Employee() {

2. this.name = "foge";

3. this.dept = "Development";

4. this.work = function() {

5. console.log("do test");

6. }

7.}

8.Employee.prototype.manage = function() {

9. console.log("manage");

10.}

11.var e = new Employee();

以下

実行

e

自体 定義

すべ

選択

A) dept

B) name

C) work

D) manage

manage

e

定義

Object.getOwnPropertyNames()

(27)

for/in

1.

var nums = [10, 20, 30];

2. for (var num in nums) {

3. console.log(num);

// 0

1

2

出力

4.

}

for/in

配列 使用

配列 要素 対

処理 繰 返

上述 例

配列 要素番号 出力

!!

(28)

問題

4

1.var nums = [10, 20, 30];

2.nums.foge = "hogehoge";

3.for (var num in nums) {

4. console.log(num);

5.}

以下

実行

結果 表示

正 い

選び

A) 10 20 30

B) 10 20 30 fogefoge

C) 0 1 2

(29)

解答

4

1.var nums = [10, 20, 30];

2.nums.foge = "hogehoge";

3.for (var num in nums) {

4. console.log(num);

5.}

以下

実行

結果 表示

正 い

選び

A) 10 20 30

B) 10 20 30 fogefoge

C) 0 1 2

D) 0 1 2 foge

自作

実行

ECMAScript2015

追加

for/of

使う

(30)

2.2.1

ベン

2.2.1

ベン

重要度

★★★★★★★★

8

出題種別

知識問題

ン 問題

記述問題

説明 望

JavaScript

ー 読

ー 操作

発生

発生タ

理解

ン 処理

行う ー

記述

(31)

ベン

ー ー

表示

非表示

ー ー 動作

(32)

ベン 処理 登録

1. <button id="btn" onclick="alert('FLM')"></button>

2.

3. var btn = document.getElementById("btn");

4. btn.onclick = function(){};

5. btn.addEventListener("click", function(){}, false);

JavaScript

ン 登録 方法

3

一般的

addEventListener

使わ

1

以上

追加

!

制御

!

IE6-8

対応

(33)

ベン

発生タ ミン

window

document

html

body

table

tbody

tr th td

tr th td

チ ー

ター

document

html

body

table

tbody

tr

tr

th

td

th

td

DOM

(34)

問題

5

以下

Web

ー 上

click me

タン

際 表示

文字列

正 い

1

選び

表示順 表

A) button click

div click

B) div click

button click

C) button click

1. <div onclick="alert('div click')">

2. <button id="btn">click me</button>

3. </div>

4. <script>

5. var btn = document.getElementById("btn");

6. btn.addEventListener("click", function(){

7. alert("button click");

8. });

(35)

解答

5

button

要素

div

click

発生

A) button click

div click

B) div click

button click

C) button click

1. <div onclick="alert('div click')">

2. <button id="btn">click me</button>

3. </div>

4. <script>

5. var btn = document.getElementById("btn");

6. btn.addEventListener("click", function(){

7. alert("button click");

8. });

9. </script>

以下

Web

ー 上

click me

タン

際 表示

文字列

正 い

1

選び

(36)

2.2.2

キュメン オ

DOM

2.2.2

キュメン オ

DOM

重要度

★★★★★★

6

出題種別

知識問題

ン 問題

説明 望

ン 発生時

D

OM

利用

HTML

内容 読 込

換え 処理 行う ー

記述方法

い 理解

(37)

要素

h1

DOM

Document Object Model

document

/

要素

html

要素

head

要素

body

要素

meta

要素

section

DOM

属性

id

属性

charset

要素

title

属性

id

HTML

文書

ー構造

上 展開

集合体

要素

p

DOM

属性

lang

HTML

要素

ー構造

DOM

(38)

DOM

操作

1. <div id="message">

2. </div>

3. <script>

4. var mess = document.getElementById("message");

5. mess.innerHTML = "<p>Fujitsu Learning Media.</p>";

6. </script>

DOM (Document Object Model)

HTML

操作

!!

(39)

問題

6

1. <div id="target">

2. <button id="yes">yes</button><button>no</button>

3. </div>

JavaScript

使用

実行前

HTML

実行後

う 書 換え

い 正

変更

1

選び

target

div

yesButton

button

要素 参照

A)

target.innerHTML = "<button>no</button>";

B)

var noButton = document.createElement("button");

noButton.innerHTML = "no";

target.insertBefore(noButton, yesButton);

C)

target.hasAttribute("<button>no</button>");

D)

var noButton = document.createElement("button");

実行前

実行後

1. <div id="target">

(40)

解答

6

1. <div id="target">

2. <button id="yes">yes</button><button>no</button>

3. </div>

JavaScript

使用

実行前

HTML

実行後

う 書 換え

い 正

変更

1

選び

target

div

yesButton

button

要素 参照

A)

target.innerHTML = "<button>no</button>";

B)

var noButton = document.createElement("button");

noButton.innerHTML = "no";

target.insertBefore(noButton, yesButton);

C)

target.hasAttribute("<button>no</button>");

D)

var noButton = document.createElement("button");

noButton.innerHTML = "no";

実行前

実行後

1. <div id="target">

(41)

2.8.1 Web Storage

2.8.1 Web Storage

重要度

★★★★

4

出題種別

知識問題

ン 問題

説明 望

Web Storage

特徴 仕

様 理解

読 込 ・

書 込

行う ー

(42)

Web Storage

特徴

ータ 保存 取得

ータ 保存

機能

ータ 残

Key-Value

配列 形式 複数

ータ 保存

ータ

Key-Value

配列 保存

ー 指定

値 格納

ータ 保存

ータ 保存容量

5MB

程度あ

ータ件数 多い

JSON

大 い

ータ

格納

保存容量 異

制限

同一

Web

保存

ータ

取得

Web

保存

ータ 変更

参照

(43)

ータ保存系

API

比較

Cookie

Web Storage

Indexed Database

WebSQL

保存容量

4KB

5MB-10MB

5MB-10MB

5MB-10MB

保存期間

有期限

無期限

/

無期限

無期限

送受信

JS

操作時

JS

操作時

JS

操作時

ータ形式

文字列

文字列

/

/

非同期

×

×

特徴

設定

HTTP

通信

送受信

API

大容量 ータ 保

複雑

ータ 扱え

API

複雑

実装 少々難 い

SQL

文法

ータ

操作

(44)

Web Storage

を使用した ータ保存

1. sessionStorage.setItem("Item", "Book");

2. // sessionStorage.Iem = "Book";

同 動作

3. var storage = sessionStorage.getItem("Item");

4. console.log(storage);

5. sessionStorage.removeItem("Item");

sessionStorage

localStorage

違い 保存期間

!!

sessionStorage

ン 終了

削除

(45)

問題

7

Web Storage

説明

正 い

1

選び

A) key-value

形式

ータ 保存

B) string

Blob

格納

C)

非同期 動作

ー ン

(46)

解答

7

Web Storage

API

使い

同期処理

ー ン

字列

格納

い仕様

Web Storage

説明

正 い

1

選び

A) key-value

形式

ータ 保存

B) string

Blob

格納

C)

非同期 動作

ー ン

(47)

2.9.1 WebSocket

2.9.1 WebSocket

重要度

★★

2

出題種別

知識問題

説明 望

WebSocket

特徴 理

通信 行う あ

必要 知識

(48)

WebSocket

特徴

双方向通信 実装

WebSocket

ー 間 接続 維持

双方向通信 実装

XMLHttpRequest

Server-Sent Events

一回 通信

行う

HTTP

通信 比較

常時接続

双方向通信 行う

WebSocket

送受信処理 効率 高い

WebSocket

使用

通信方式

HTTP

WebSocket Protocol

使用

WebSocket Protocol

対応

WebSocket

使用

必要 あ

WebSocket

対応

い い従来

Web

使用

DB

WebSocket

/Web

ータ ネ

ン ー ン

WebSocket

ータ受信時 ン 処理 ータ取得

WebSocket

双方向通信

WebSocket ー

(49)

通信系

API

比較

Server-Sent Events

WebSocket

XMLHttpRequest

HTTP

WebSocket Protocol

HTTP

非同期通信

双方向通信

×

通知

×

通信効率

WebSocket

特徴

Web

通信 特化

一方向

双方向

通信

ー ン

通信

実現

備考

IE/Edge

未実装

広 使

(50)

WebSocket

を使用した通信処理

1. var socket = new WebSocket("ws://localhost:8888/");

2. socket.send("Hello, World");

3. socket.onmessage = function (e) {

4. console.log(e.data);

5. }

WebSocket

使用

URL

ws

wss

情報 送信

send

(51)

問題

8

WebSocket

説明

正 い

1

選び

A)

通信 実現

場合

1

終了

再接続 必要

B)

情報送信

ータ送信

C)

ン 同士

P2P

Peer to Peer

通信 実

(52)

解答

8

A)

XMLHttpRequest

B)

Server-Sent

Events

C)

WebRTC

説明

WebSocket

説明

正 い

1

選び

A)

通信 実現

場合

1

終了

再接続 必要

B)

情報送信

ータ送信

C)

ン 同士

P2P

Peer to Peer

通信 実

(53)

2.10.1 Geolocation API

基本 位置情報 取得

2.10.1 Geolocation API

基本 位置情報 取得

重要度

★★

2

出題種別

知識問題

説明 望

Geolocation API

概要

利用時 注意点

(54)

Geolocation API

特徴

GPS

使用

位置情報取得

端末

搭載

GPS

受信機

経由

正確 位

置情報 取得

GPS

受信機 使用

い場合

ワー 装置 連携

位置情報 取得

ー ー

使用可否 設定

位置情報

ー ー

わ 情報

ー ー 位置情

報 使用可否 設定

位置情報 取得

地図 ー

連携

既存 地図 ー

Geolocation API

使用

連携 可能

(55)

Geolocation API

を使用した位置情報取得

1. navigator.geolocation.getCurrentPosition(

2. function (position) {

3. //Position

取得

4. var latitude = position.coords.latitude; //

緯度

5. var longitude = position.coords.longitude; //

経度

6. var accuracy = position.coords.accuracy; //

誤差

7. var altitude = position.coords.altitude; //

高度

8. },

9. function (err) {

10. console.error(err.message);

11.});

getCurrentPosition

替わ

watchPosition

使う

(56)

問題

9

Geolocation API

説明

正 い

1

選び

A) GPS

受信機 存在

い端末

Web

閲覧

場合 位置情報

取得

B)

ー ー 情報提供 拒否

場合

特権設定

位置

情報 取得

C)

ー 発生

場合

getCurrentPosition

1

引数 指定

関数 実行

(57)

解答

9

Geolocation API

特権設定

設定 使用

Geolocation API

説明

正 い

1

選び

A) GPS

受信機 存在

い端末

Web

閲覧

場合 位置情報

取得

B)

ー ー 情報提供 拒否

場合

特権設定

位置

情報 取得

C)

ー 発生

場合

getCurrentPosition

1

引数 指定

関数 実行

(58)

2.11.1

並列処理 記述

2.11.1

並列処理 記述

重要度

★★★★

4

出題種別

知識問題

ン 問題

説明 望

Web Workers

特徴

理解

並列処理

ー 検出 行う ー

う 動作

(59)

Web Workers

ワー ー

実行

ワー ー

Web

描画処理

2.

Web

CSS

HTML

JavaScript

分離

JavaScript

処理

JavaScript

処理

実行

Web

ー 上 処理 ワー

(60)

Web Workers

特徴

ワー ー 分離

JavaScript

処理 並列 処理

JavaScript

処理単位 あ ワー ー

Web

処理

分離

複数 ワー ー 実行

JavaScript

同時実行制御 行え

ワー ー 処理

JS

記述

並列処理

呼び出 元

JS

記述

必要 あ

Web Workers

ン タン 生成

読 込

使用

ワー ー間

ータ 交換

ワー ー間 別

ータ 共有

DOM

window

XHR

一部

可能

直接

ータ 送受信

postMessage

(61)

Web Workers

1. var work = new Worker("worker.js");

2. work.postMessage(100);

3. work.onmessage = function(e) {

4. console.log(e.data);

5. }

index.html

1. self.onmessage = function(e) {

2. var data =e.data;

3. for (var i = 0; i < 10000; i++) {

4. data += i;

5. }

6. self.postMessage(data);

7.}

(62)

問題

10

1. var work = new Worker("worker.js");

2. work.postMessage(100);

3. work.onmessage = function(e) {

4. console.log(e.data);

5. }

以下

実行

1

選び

A) 1

行目

B) 2

行目

C)

行目

I.

self.onmessage = function(e) {

II. var data =e.data;

III. document.getElementById("message").innerHTML = data;

IV. postMessage(true);

V. }

index.html

(63)

解答

10

Web Workers

document

postMessage

関数

self

大丈夫

!

1. var work = new Worker("worker.js");

2. work.postMessage(100);

3. work.onmessage = function(e) {

4. console.log(e.data);

5. }

以下

実行

1

選び

A) 1

行目

B) 2

行目

C)

行目

I.

self.onmessage = function(e) {

II. var data =e.data;

III. document.getElementById("message").innerHTML = data;

IV. postMessage(true);

V. }

index.html

(64)

参考

ECMAScript2015

非同期処理

1/2

1.var data = 10;

2.var p1 = new Promise(function (resolve, reject) {

3. for (var i = 0; i < 10000; i++) {

4. data += i;

5. }

6. if(data >= 0){

7. resolve(data);

8. }

9. reject(Error("data is negative."))

10. });

Promise

ECMAScript2016

追加

非同期処理

!!

成功時 呼び出 値

resolve

失敗時 呼び出 値

reject

登録

Battery Status API

う 比較的新 目

API

Promise

(65)

参考

ECMAScript2015

非同期処理

2/2

1.p1.then(function (data) {

2. alert(data);

3.})

4. .catch(function (err) {

5. alert(err.message);

6. });

Promise

処理 成功

then

実行

失敗

catch

方 実行

(66)

参考

ECMAScript2015

ー関数

1. var p1 = new Promise((resolve, reject) => { });

2. p1.then(data => { })

3. .catch(err => { });

ー関数 使う

関数定義

(

引数

) => {}

書式 書

引数

1

場合

( )

省略

(67)
(68)

参照

関連したドキュメント

春学期入学式 4月1日、2日 履修指導 4月3日、4日 春学期授業開始 4月6日 春学期定期試験・中間試験 7月17日~30日 春学期追試験 8月4日、5日

テナント所有で、かつ建物全体の総冷熱源容量の5%に満

模擬試料作製、サンプリング、溶解方法検討 溶解(残渣発生) 残渣評価(簡易測定) 溶解検討試験 Fe共沈アルカリ融解

③規定荷重で取 解除 り出せない変 形の無い燃料 の対応. ④

③規定荷重で取 解除 り出せない変 形の無い燃料 の対応. ④

2018年 8月 1日 (株)ウォーターエージェンシーと、富士市公共下水道事業における事業運営の効率化 に関するVE(Value

2017年 8月25日 収益力改善・企業価値向上のための新組織「稼ぐ力創造ユニット」の設置を決定 2017年 9月

シュラウド 補修工事終了 再循環系配管 補修工事予定 シュラウド 補修工事終了 再循環系配管 補修工事中. シュラウド