SlideShare a Scribd company logo
【フロントエンド勉強会】
フロントエンド基礎知識
- JavaScript / TypeScriptについて -
株式会社Wiz
メディア本部・クリエイティブ事業部
フロントエンドチーム髙橋
● JavaScript(JS)とは
● TypeScript(TS)とは
● JSとTSの違い
● オブジェクト指向について
● TypeScriptに軽く触れてみよう
● DOMについて
● 今後研修でやっていくこと
【アジェンダ】
【Webサイト制作フロー】
企画・サイト設計
デザイン制作
プログラミング
検証
公開
スタイリング(CSS)
配置・装飾
プログラミング(Javascript)
DOM(Document Object Model)操作
仕様書とワイヤーフレーム(サイト仕様&ページ構成)、
デザイン(スタイル内容[フォントサイズとか余白とか])を確認しながら、下
記のような流れで進めていく。
コーディング
マークアップ(HTML)
文章に意味付け(文書構造の定義)
JavaScriptは主にウェブブラウザの中で動くプログラミング言語です。 ウェブサイトで操作をしたら表
示が書き換わったり、ウェブサイトのサーバーと通信してデータを取得したりと現在のウェブサイトに
は欠かせないプログラミング言語です。
引用:https://jsprimer.net/basic/introduction/
ex) https://codepen.io/Sota/pen/LYRKxpj
【JavaScriptとは】
TypeScriptは、JavaScriptに静的型づけの構文を追加した言語とトランスパイラーです。 TypeScript
言語には型注釈などの構文が用意されており、 JavaScriptのコードに対して型注釈をつけて静的な
型チェックができます。 また、TypeScriptのコードは型に関する構文などを取り除いた JavaScriptの
コードに変換できます。
引用:https://jsprimer.net/basic/introduction/
【TypeScriptとは】
つまり何が違う??→

エラーに気づけるタイミングが違う 


「プログラムを実行」した時


「テキストエディターで入力」した時
【Webサイト制作フロー】
企画・サイト設計
デザイン制作
プログラミング
検証
公開
コーディング
←ここが超楽になる!
オブジェクト指向とは
プログラム上で扱う対象をオブジェクト(モノ)に見立てて、
オブジェクトを中心にコードを組み立て行く手法のこと。
オブジェクトはプロパティ+メソッドで構成されている
(これはJS/TSというよりプログラミングの考え方です!)
【オブジェクト・プロパティ・メソッド】
オブジェクト:特長や機能が詰まったかたまり
人(人間)
生年月日
性別
年齢
呼吸する 考える
歩く
職業
寝る
【オブジェクト・プロパティ・メソッド】
プロパティ:オブジェクトが持っている特長
人(人間)
生年月日
性別
年齢
呼吸する 考える
歩く
出身地
寝る
【オブジェクト・プロパティ・メソッド】
メソッド:オブジェクトが持っている処理・動作
人(人間)
生年月日
性別
年齢
呼吸する 考える
歩く
出身地
寝る
【関数】
関数:プログラムの収納ボックス(メソッドとほぼ同義)
人(人間)
生年月日
性別
年齢
呼吸する 考える
歩く
出身地
寝る
「呼吸する」のに必要な処理が含まれている
● 人間が酸素を肺に取り込む
● 肺胞から血液に酸素を渡す
● 血液が酸素を各細胞に配りまくる
● 血液が細胞に酸素を渡す代わりに、二酸化炭素を
受け取る(静脈)
● 二酸化炭素が溜まった血液は肺胞にいく
● 二酸化炭素が肺から吐き出される
【TSのオブジェクト・プロパティ・メソッド】
オブジェクト
const person = { }
ex) link
メソッド
const person: personType = {
name: "山田太郎",
age: 22,
introduce: function () {
console.log("名前は" + this.name + "です。" + this.age + "歳です。");
}
};
プロパティ
const person = {
name: "山田太郎",
age: 22,
}
オブジェクト指向 Formの場合
オブジェクト指向 Formの場合
Form(Object)
お名前など
各ボタン
Formの送信先URL
送信する リセットする
etc ...
etc ...
【TypeScriptに軽く触れてみよう!】
1. alert()
2. console.log()
3. 変数の設定・参照
4. 型について
5. 四則演算・文字列の連結
6. 条件分岐
7. 要素の取得
1. alert link
alert(“出力したい文字列”)  
2. console link
console.log(“出力したい文字列”)  
3. 変数の設定・参照
変数とはデータの入れ物のこと
ex) 消費税
いっぱい書き換え必要。。
3. 変数の設定・参照
変数を使うと??
3. 変数の設定・参照 link
const : 再代入できない変数
let : 再代入できる変数
4. 型について
値の型(type)のこと
4. 型について link
ここで全部覚えるのはムリなので↑参照ください!
5. 四則演算・文字列の連携について
JavaScriptの演算子
足し算:『+』
引き算:『-』
掛け算:『*』
割り算:『/』
剰余 :『%』
5. 四則演算・文字列の連携について
+演算子で文字列同士を結合できる
こんな書き方もできる!(テンプレートリテラルと言います)
5. 四則演算・文字列の連携について
文字列と数字を足したらどうなる??
回答はこちら
6. 条件分岐 link
ユーザーの操作などから、処理を分岐させるために使用します。
7. 要素の取得 link
JS(TS)では次に説明するDOMを操作することがメインの役割の1つです。
「操作したい要素を取得」することがファーストステップ!
もっともシンプルなのが、getElementById メソッド
いろんな取得方法があります!使いながら覚えよう!
【TypeScriptに軽く触れてみよう!】
1. alert()
2. console.log()
3. 変数の設定・参照
4. 型について
5. 四則演算・文字列の連結
6. 条件分岐
7. 要素の取得
【DOM(Document Object Model)】
DOMとは、HTMLの各要素にアクセスするための仕組み
のこと。
【DOM(Document Object Model)】
html
body
meta
head
title
h1
div#main
Document
p
p
DOMツリーはこんな感じになる。
【DOM(Document Object Model)】
html
body
meta
head
title
h1
div#main
Document
p
p
document.getElementById(“main”)
【今後研修でやっていくこと】
● 課題その1「よくある質問ページを作ろう」
○ トグルボックスの実装
● 課題その2「ランディングページを作ろう」
○ フォーム内容のエラーチェック(バリデーションチェック)
○ フォームに入力された内容をAPIを叩いて送信する

More Related Content

Similar to 【フロントエンド勉強会】 フロントエンド基礎知識

Coding Design Portfolio
Coding Design PortfolioCoding Design Portfolio
Coding Design Portfolio
Fuminori Mori
 
ワイヤーフレームを高速にXDらしく作る
ワイヤーフレームを高速にXDらしく作るワイヤーフレームを高速にXDらしく作る
ワイヤーフレームを高速にXDらしく作る
Risa Yuguchi
 
あるマークアップエンジニアの 初期制作時のテンプレ事情
あるマークアップエンジニアの初期制作時のテンプレ事情あるマークアップエンジニアの初期制作時のテンプレ事情
あるマークアップエンジニアの 初期制作時のテンプレ事情
Shingo Iwahori
 
オークションApi×就活swotプレゼン
オークションApi×就活swotプレゼンオークションApi×就活swotプレゼン
オークションApi×就活swotプレゼン
Kazuki Sakai
 
Uiセミナー2014 07-01
Uiセミナー2014 07-01Uiセミナー2014 07-01
Uiセミナー2014 07-01
Yusuke Kuroda
 
Windowsストア[DB]アプリ入門
Windowsストア[DB]アプリ入門Windowsストア[DB]アプリ入門
Windowsストア[DB]アプリ入門Akira Hatsune
 
Material DesignをPolymerで表現しよう(神戸ITフェスティバル × HTML5fun@神戸)
Material DesignをPolymerで表現しよう(神戸ITフェスティバル × HTML5fun@神戸)Material DesignをPolymerで表現しよう(神戸ITフェスティバル × HTML5fun@神戸)
Material DesignをPolymerで表現しよう(神戸ITフェスティバル × HTML5fun@神戸)
Masayuki Abe
 
うちの開発におけるXD利用法
うちの開発におけるXD利用法うちの開発におけるXD利用法
うちの開発におけるXD利用法
Kazuma Sekiguchi
 
ブラウザにやさしいHTML/CSS
ブラウザにやさしいHTML/CSSブラウザにやさしいHTML/CSS
ブラウザにやさしいHTML/CSSTakeharu Igari
 
12.09.08 明星和楽2012 KLabハンズオンセッション
12.09.08 明星和楽2012 KLabハンズオンセッション12.09.08 明星和楽2012 KLabハンズオンセッション
12.09.08 明星和楽2012 KLabハンズオンセッション
Kei Nakazawa
 
メディア工房サマーワークショップ「Webアプリ制作」1日目
メディア工房サマーワークショップ「Webアプリ制作」1日目メディア工房サマーワークショップ「Webアプリ制作」1日目
メディア工房サマーワークショップ「Webアプリ制作」1日目Takashi Endo
 
第2回ExtJSユーザー事例紹介
第2回ExtJSユーザー事例紹介第2回ExtJSユーザー事例紹介
第2回ExtJSユーザー事例紹介Akiyuki Nomura
 
無償でここまで使えるアドビのWeb制作ツール for デブサミ2013
無償でここまで使えるアドビのWeb制作ツール for デブサミ2013無償でここまで使えるアドビのWeb制作ツール for デブサミ2013
無償でここまで使えるアドビのWeb制作ツール for デブサミ2013
Keisuke Todoroki
 
菊池崇のレスポンシブWEBデザイン道場(2限目:RWDをクライアントにディレクションする方法)
菊池崇のレスポンシブWEBデザイン道場(2限目:RWDをクライアントにディレクションする方法)菊池崇のレスポンシブWEBデザイン道場(2限目:RWDをクライアントにディレクションする方法)
菊池崇のレスポンシブWEBデザイン道場(2限目:RWDをクライアントにディレクションする方法)
schoowebcampus
 
中・大規模サイト作成業務フロー
中・大規模サイト作成業務フロー中・大規模サイト作成業務フロー
中・大規模サイト作成業務フローsenakamura
 
Htmlコーディングの効率化 前編
Htmlコーディングの効率化 前編Htmlコーディングの効率化 前編
Htmlコーディングの効率化 前編
Yasuhito Yabe
 
141115 making web site
141115 making web site141115 making web site
141115 making web site
Himi Sato
 
WCAN 2015 Autumn
WCAN 2015 AutumnWCAN 2015 Autumn
WCAN 2015 Autumn
konnma
 
[visasQ] 2017-04-26 ビザスクを支えるアーキテクチャ
[visasQ] 2017-04-26 ビザスクを支えるアーキテクチャ[visasQ] 2017-04-26 ビザスクを支えるアーキテクチャ
[visasQ] 2017-04-26 ビザスクを支えるアーキテクチャ
visasQ - ビザスク
 

Similar to 【フロントエンド勉強会】 フロントエンド基礎知識 (20)

Coding Design Portfolio
Coding Design PortfolioCoding Design Portfolio
Coding Design Portfolio
 
ワイヤーフレームを高速にXDらしく作る
ワイヤーフレームを高速にXDらしく作るワイヤーフレームを高速にXDらしく作る
ワイヤーフレームを高速にXDらしく作る
 
あるマークアップエンジニアの 初期制作時のテンプレ事情
あるマークアップエンジニアの初期制作時のテンプレ事情あるマークアップエンジニアの初期制作時のテンプレ事情
あるマークアップエンジニアの 初期制作時のテンプレ事情
 
オークションApi×就活swotプレゼン
オークションApi×就活swotプレゼンオークションApi×就活swotプレゼン
オークションApi×就活swotプレゼン
 
Uiセミナー2014 07-01
Uiセミナー2014 07-01Uiセミナー2014 07-01
Uiセミナー2014 07-01
 
Windowsストア[DB]アプリ入門
Windowsストア[DB]アプリ入門Windowsストア[DB]アプリ入門
Windowsストア[DB]アプリ入門
 
DOM Scripting ことはじめ
DOM Scripting ことはじめDOM Scripting ことはじめ
DOM Scripting ことはじめ
 
Material DesignをPolymerで表現しよう(神戸ITフェスティバル × HTML5fun@神戸)
Material DesignをPolymerで表現しよう(神戸ITフェスティバル × HTML5fun@神戸)Material DesignをPolymerで表現しよう(神戸ITフェスティバル × HTML5fun@神戸)
Material DesignをPolymerで表現しよう(神戸ITフェスティバル × HTML5fun@神戸)
 
うちの開発におけるXD利用法
うちの開発におけるXD利用法うちの開発におけるXD利用法
うちの開発におけるXD利用法
 
ブラウザにやさしいHTML/CSS
ブラウザにやさしいHTML/CSSブラウザにやさしいHTML/CSS
ブラウザにやさしいHTML/CSS
 
12.09.08 明星和楽2012 KLabハンズオンセッション
12.09.08 明星和楽2012 KLabハンズオンセッション12.09.08 明星和楽2012 KLabハンズオンセッション
12.09.08 明星和楽2012 KLabハンズオンセッション
 
メディア工房サマーワークショップ「Webアプリ制作」1日目
メディア工房サマーワークショップ「Webアプリ制作」1日目メディア工房サマーワークショップ「Webアプリ制作」1日目
メディア工房サマーワークショップ「Webアプリ制作」1日目
 
第2回ExtJSユーザー事例紹介
第2回ExtJSユーザー事例紹介第2回ExtJSユーザー事例紹介
第2回ExtJSユーザー事例紹介
 
無償でここまで使えるアドビのWeb制作ツール for デブサミ2013
無償でここまで使えるアドビのWeb制作ツール for デブサミ2013無償でここまで使えるアドビのWeb制作ツール for デブサミ2013
無償でここまで使えるアドビのWeb制作ツール for デブサミ2013
 
菊池崇のレスポンシブWEBデザイン道場(2限目:RWDをクライアントにディレクションする方法)
菊池崇のレスポンシブWEBデザイン道場(2限目:RWDをクライアントにディレクションする方法)菊池崇のレスポンシブWEBデザイン道場(2限目:RWDをクライアントにディレクションする方法)
菊池崇のレスポンシブWEBデザイン道場(2限目:RWDをクライアントにディレクションする方法)
 
中・大規模サイト作成業務フロー
中・大規模サイト作成業務フロー中・大規模サイト作成業務フロー
中・大規模サイト作成業務フロー
 
Htmlコーディングの効率化 前編
Htmlコーディングの効率化 前編Htmlコーディングの効率化 前編
Htmlコーディングの効率化 前編
 
141115 making web site
141115 making web site141115 making web site
141115 making web site
 
WCAN 2015 Autumn
WCAN 2015 AutumnWCAN 2015 Autumn
WCAN 2015 Autumn
 
[visasQ] 2017-04-26 ビザスクを支えるアーキテクチャ
[visasQ] 2017-04-26 ビザスクを支えるアーキテクチャ[visasQ] 2017-04-26 ビザスクを支えるアーキテクチャ
[visasQ] 2017-04-26 ビザスクを支えるアーキテクチャ
 

【フロントエンド勉強会】 フロントエンド基礎知識