そういえば
以前に似たようなのを書いた覚えがありますが、まあ書くことで記憶を定着させるという意味合いもあるので重複覚悟で書きます。
サイト
- CodePen
- JSFiddle
- MDNドキュメント
- Can I use...
- ECMAScript 2015 Language Specification
ES6 (ES 2015) と ES5
- 原則として ES6 で書いていく
- ES5 は読めるようにする
- ES6 ならではの書き方
- let
- アロー関数
- class
- 'use strict'
- fetch
- などなど
JavaScript の基礎(用語)
- 無名関数(匿名関数)
- 即時関数
- コールバック関数
- DOM
- 非同期
- Ajax
- 主要メソッド
- addEventListner
- getElementById
- getElementsByClassName
- setInterval
- setTimeout
トランスパイラ
- Babel
バンドラ
- webpack
- Gulp
- Grant
AltJS
- TypeScript
- CoffeeScript
XHR (XMLHttpRequest)
- 同一生成元ポリシー(同一オリジンポリシー)
- CORS(Cross-Origin Resource Sharing、オリジン間リソース共有)
- JSONP(JSON with padding)
- scriptタグを使用してクロスドメインなデータを取得する仕組み
- プロキシ(サーバサイド)
- 自分の管理下にあるプロキシサーバにリクエストしてもらうことで別ドメインへのアクセスを可能にする
JavaScript のライブラリ
- CDNで読み込むと楽
- プロダクションでは Node からビルドする
- jQuery
- jQuery プラグイン
- Underscore.js
フレームワーク
- React
- Vue.js
- Angular
- Knockout.js
- Stimulus
- https://stimulusjs.org/
- Basecamp による新しいフレームワーク
- Rails 6 に乗る?
- 軽量、部分的
- Node.js のフレームワークのまとめ
アーキテクチャ
- SPA
- SSR
CSS
- Sass
- SCSS
- CSS3
- Bootstrap
- Material
グラフライブラリ
- Chart.js
- Highcharts
- Google Charts
- Echarts
デザインツール
- Sketch
- Figma
- Adobe XD
- STUDIO
- Phase - Digital design Reinvented
- Digital Product Design, Workflow & Collaboration | InVision
発展
- オブジェクトとは
- クロージャ
- Storage
- Promise
- Jasmine
- Puppeteer
- Web Worker
- ESLint
- 仮想DOM
- コンポーネント
- ライフサイクル
- Polyfill
環境構築から開発への流れ
ndenv
をインストールnode
をインストールnpm
もいっしょに入る
npm
でyarn
をインストールyarn
でbabel
をインストール- es2015 パッケージも忘れずに
yarn
でwebpack
をインストール- loader を忘れずに
- フレームワークを入れる場合はここで入れる
React
Vue.js
webpack.config.js
を書く- コードを書く
- ES6 は
TypeScript
を用いるのもよい - スタイルは
SCSS
- HTML5 は Rails ならば
Slim
- ES6 は
webpack
でバンドルする- トランスパイルも
- デプロイする
- CI で回すのが好ましい