命名規約とディレクトリ構成

 
Web Tips.
Booskanium's
Booskanium's Web Tips.

命名規約はデファクトスタンダードに右へ習いしたほうが可読性が良くなります。

小文字のスネークケースは外部変数

ユーザーが打ち込む可能性があるファイル名は小文字のスネークケースを利用する。
id名はハッシュリンクでユーザーの目に触れることが有る。
例:snake_case.html,snake_case.css,snake_case.js,id_snake_case

キャメルケースは内部変数

関数名,変数名,メソッド名,HTMLのクラス名など内部で利用する変数名はキャメルケースを利用する。
落書き人は関数名とメソッド名の最初のワードが動詞を使うようにしています。

例:camelCase

参考︰予約語

パスカルケースはクラス名

JavaScriptのクラス名は 例:PascalCase

大文字スネークケースは定数

例:SNAKE_CASE

プライベートな名称は紳士協定

JavaScriptにはアクセス修飾子が無かった為に、アンダースコアーでは始まる名称はプライベートだよという暗黙の意味合いとして使うのが通例となっています。
例:_privateName

接頭辞にアンダースコア1つが付いた関数名、変数名、メソッド名は、ある機能の中で使われているもので、原則外部から利用してほしくないプライベート関数やプロテクト関数。

クロージャーでプライベートモドキな書き方もありますが、プライベート機能は本来なら言語レベルで対応すべき課題で、JavaScriptの現状においては紳士協定で十分だと考えています。

落書き人独自な命名として接頭辞にアンダースコア2つが付いているのは、自家製汎用関数や変数など。
例:

	function __$(id) {
		return document.getElementById(id);
	}

関数の引数

例:argPara
例:aPara
例:opt_argPara   省略可能な引数の場合

JavaScriptはハイフンに注意

変数名にハイフン

変数名にハイフン利用は不可

オブジェクトのプロパティ名にハイフンを含む場合

const station = {
	"JOAK": {
		name: "NHK ラジオ第一(東京)",
		frequency: "594Khz"
	},
	"JOAK-FM": {
		name: "NHK-FM(東京)",
		frequency: "82.5Mhz"
	}
}
の場合に
console.log(station["JOAK-FM"].name); //ブラケット記法ならOK
console.log(station.JOAK-FM.name); //ドット記法ではNG

ファイルの拡張子

私が使うのは以下の通りです。

htm : 今はHTMLにこの拡張子は使っていません。
html : HTMLはこの拡張子
shtml : インクルードされる側(*1)のHTMLにこの拡張子を使います。
php : PHPのプログラム(*2)
css : CSS
js : JavaScriptとJSONP
json : JSONデータ
xml : XMLデータ
txt : テキストファイル ※わざわざHTMLにする必要がない時
jpg : 画像ファイル 写真はこれ
gif : 画像ファイル 未だに健在
png : 画像ファイル 被せる場合はこれ
webp : 画像ファイル 時々つかいます
svg : ロゴはベクター画像で
mp3 : 音声ファイルはMP3が汎用的
mp4 : 音声ファイルと動画ファイル
pdf : 自発的には使いません。Web黎明期にWebフォーム(*3)として利用