LoginSignup
0
0

はじめに

自分がよく使うフォーマットを中心に備忘録としてまとめておきます。
IDEの1つであるVSCodeのツールチップとJSDoc出力後のイメージをセットで掲載しておきます。

環境

JSDoc
v4.0.3
VSCode
v1.90.0

【スカラー型】

・boolean

ソース
/**
 * true or falseの2値型
 * 
 * @type {boolean}
 */
let data_boolean = false;
 -ツールチップ-

image.png

 -出力イメージ-

image.png

・number

ソース
/**
 * 数値型
 * 
 * @type {number}
 */
let data_number = 0;
 -ツールチップ-

image.png

 -出力イメージ-

image.png

・string

ソース
/**
 * 文字列型
 * 
 * @type {string}
 */
let data_string = '';
 -ツールチップ-

image.png

 -出力イメージ-

image.png

【配列型】

・Array

ソース
/**
 * 配列型
 * 
 * @type {Array}
 */
let data_array = [];
 -ツールチップ-

image.png

 -出力イメージ-

image.png

・Array.<number>

ソース
/**
 * 配列型
 * 
 * @type {Array.<number>}
 */
let data_array_number = [];
 -ツールチップ-

image.png

 -出力イメージ-

image.png

・string[]

ソース
/**
 * 配列型
 * 
 * @type {string[]}
 */
let data_array_string = [];
 -ツールチップ-

image.png

 -出力イメージ-

image.png

【オブジェクト型】

・Object

ソース
/**
 * オブジェクト型
 * 
 * @type {Object}
 */
let data_object = {};
 -ツールチップ-

image.png

 -出力イメージ-

image.png

・*

ソース
/**
 * オブジェクト型
 * 
 * @type {*}
 */
let data_object_asterisk = {};
 -ツールチップ-

image.png

 -出力イメージ-

image.png

・any

ソース
/**
 * オブジェクト型
 * 
 * @type {any}
 */
let data_object_any = {};
 -ツールチップ-

image.png

 -出力イメージ-

image.png

・Object.<string, number>

ソース
/**
 * オブジェクト型
 * 
 * @type {Object.<string, number>}
 */
let data_object_detail = {};
 -ツールチップ-

image.png

 -出力イメージ-

image.png

・typedef

ソース
/**
 * @typedef {Object} MyObject - 複合型定義
 * @property {boolean} flag - 日時
 * @property {number} no - ユーザー名
 * @property {string} str - コメント
 */
/** @type {MyObject} */
 -ツールチップ-

👇MyObjectにカーソルを合わせた時
image.png

👇data_object_typedefにカーソルを合わせた時
image.png

MyObjectにカーソルを合わせないと@typedefの内容が表示されないので注意が必要

 -出力イメージ-

👇Type Definitionsの欄に出力される
image.png

👇変数名の欄に出力される
image.png

@typedefの内容は変数名の欄とは別の場所に出力されるので注意が必要

【関数型】

・無名関数

ソース
/**
 * @callback MyCallback - 無名関数
 * @param {boolean} flag - 日時
 * @param {number} no - ユーザー名
 * @param {string} str - コメント
 * @returns {boolean} - true(成功) or false(失敗)
 */
/** @type {MyCallback} */
let func_noname = function(){};
 -ツールチップ-

👇MyCallbackにカーソルを合わせた時
image.png

👇func_nonameにカーソルを合わせた時
image.png

MyCallbackにカーソルを合わせないと@callbackの内容が表示されないので注意が必要

 -出力イメージ-

👇Type Definitionsの欄に出力される
image.png

👇変数名の欄に出力される
image.png

@callbackの内容は変数名の欄とは別の場所に出力されるので注意が必要

・関数

ソース
/**
 * 関数
 * 
 * @param {boolean} flag - 日時
 * @param {number} no - ユーザー名
 * @param {string} str - コメント
 * @returns {boolean} - true(成功) or false(失敗)
 */
function MyFunction(){};
 -ツールチップ-

image.png

 -出力イメージ-

image.png

【null指定方法】

・null許容

ソース
/**
 * 数値型(null許容)
 * 
 * @type {?number}
 */
let data_number_or_null = 0;
 -ツールチップ-

image.png

 -出力イメージ-

image.png

・null拒否

ソース
/**
 * 数値型(null拒否)
 * 
 * @type {!number}
 */
let data_number_only = 0;
 -ツールチップ-

image.png

 -出力イメージ-

image.png

おわりに

種類は他にも色々ありますが今後必要に応じて追加していきます。

👇参考サイト

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0