【TypeScript】型ガード(Type Guard)の概要、typeofとinstanceofの利用例
型ガード(Type Guard)について 型ガード(Type Guard)とはif文やcase文をはじめとした条件分岐で変数の型を判別し、ブロック内の変数の型を絞り込む機能のことをいいます。 型ガードを利用するとブロック…
JavaScript型ガード(Type Guard)について 型ガード(Type Guard)とはif文やcase文をはじめとした条件分岐で変数の型を判別し、ブロック内の変数の型を絞り込む機能のことをいいます。 型ガードを利用するとブロック…
JavaScript今回はTypeScriptの型アサーション(Type Assertion)について紹介します。利用するTypeScriptのバージョンは4.3.5です。 型アサーション(Type Assertion)とは TypeScr…
JavaScriptアンビエント宣言について アンビエント宣言(Ambient Declarations)とはJavaScriptで記述されたライブラリに型情報を付加するための機能です。 JavaScriptのコードはJavaScript環…
JavaScriptコンポーネントや関数のメモ化を行うことで、不要な計算やレンダリングを抑えられるためパフォーマンス向上が期待できます。 useMemoやuseCallbackはメモ化の機能を提供するフックです。 関数コンポーネントにおいて…
JavaScriptuseEffectはReact Hooks APIの中でも使用頻度の高いフックです。 レンダリングのタイミングで副作用を実行したい場合はuseEffectを活用します。 useEffectには依存配列と呼ばれる第2引数を…
JavaScriptaxiosはフロントエンドでAPI連携を実装する際の定番HTTPクライアントです。axiosの戻り値はPromiseオブジェクトを返します。 API連携が必要な箇所でaxios.get(…)という感じで愚直にコードを…
JavaScript即時関数(MDNでいうIIFE (即時実行関数式))とは定義した直後に実行される関数のことをいいます。 今回は即時関数の書き方について紹介します。 引数がない場合の即時関数の書き方 引数がない場合、即時関数は(関数式)(…
JavaScriptfunctionの代わりにアロー関数を利用することで関数式がより簡潔に記述できます。 アロー関数の書き方にはいくつかルールが存在します。特にアロー関数の省略記法はアロー関数に慣れていないとパッとみて理解しにくいです。 そ…
JavaScriptCreate React Appを利用したReactアプリケーションの作成方法についてまとめます。 アプリケーションの作成方法 アプリケーションの作成は以下の通りです。1 ### npx $ npx create-rea…
JavaScriptcreateAsyncThunkはRedux Toolkit 1.3.0から利用できる非同期処理用の機能です。 前回、Todoアプリで理解するRedux Thunkによる非同期処理の実装方法でRedux Thunk(Th…
JavaScriptReduxで非同期処理を実装する方法は主にRedux Thunk、Redux Saga、Redux Observableがあります。 Redux ThunkはRedux Toolkitにデフォルトでインストールされている…
JavaScriptasync/awaitを利用することでPromiseの操作を簡潔に記述できます。JavaScriptで非同期処理を実装する際はasync/awaitを利用するケースがほとんどです。 今回はasync/awaitの概要につ…
JavaScriptJavaScriptで非同期処理を実装するにあたりPromiseの理解は重要です。 今回はPromiseの挙動についてまとめたので紹介をします。 Promiseについて Promiseとは『状態』を持つオブジェクトです。…
JavaScript「React Hooks APIを活用することでReduxが不要になる」という話を聞いたことがある方もいるかもしれません。 今回は、Reduxの機能をReactのみで実装する検証として、React ReduxのBasic…
JavaScriptRedux ToolkitとはReduxの記述を簡潔にするためのツールです。 Redux Toolkitを利用することで、以下のようなReduxの問題点が解決できます。1 Redux Tookitで提供されているAPIは…
JavaScriptReact Redux hooksはconnect()の代わりとなるAPIです。 React Redux hooks APIを利用することでReduxのStateやActionの実行(dispatch)がconnect(…
JavaScriptプログラミング言語において『浅い比較(shallow equal)』や『浅いコピー(shallow copy)』といった言葉をよく聞きます。 今回はJavaScriptにおける、比較やコピーで表現されることのある『浅い(…
JavaScript2020年2月現在、React ReduxのBasic Tutorialで紹介されているサンプルアプリケーション(Todoアプリ)はJavaScriptで書かれています。 今回、サンプルアプリケーションのTypeScri…
JavaScript2021年2月現在、Reactの公式ドキュメントで紹介されているチュートリアルのサンプルアプリケーション(三目並べ)はクラスコンポーネントとJavaScriptで書かれています。 前回、サンプルアプリケーションを関数コン…
JavaScript2021年2月現在、Reactの公式ドキュメントで紹介されているチュートリアルのサンプルアプリケーション(三目並べ)はJavaScriptで書かれています。 今回、サンプルアプリケーションのTypeScript版を作成し…
JavaScript2021年2月現在、Reactの公式ドキュメントで紹介されているチュートリアルのサンプルアプリケーション(三目並べ)はクラスコンポーネントで作られています。 今回、サンプルアプリケーションの関数コンポーネント版を作成した…
JavaScriptこんにちは。Enjoy IT Life管理人の@nishina555です。 前回、『【Nuxt】SSR・SSG・SPAにおける『nuxt build』と『nuxt generate』の実行結果の違いまとめ』で、Nuxtで…
JavaScriptこんにちは。Enjoy IT Life管理人の@nishina555です。 NuxtにはSSR(Server Side Rendering)、SSG(Static Site Generator)1、SPA(Single …