毎度様でした。
今日はJavaScriptに集中して復習していました。
今までの自分は、
「コードは書けるけど、なぜそう書くのか説明できない」
という状態だったなと改めて感じています。
特につまずいていたのが、
"ページを開いた瞬間の状態”をどう作っているのか"、という部分。
たとえばクラスの open や emphasis は、
JavaScriptが勝手に動きを作っているわけではなく、
CSS側ですでに「このクラスが付いたら、こう表示する」という
状態が定義してあります。
JavaScriptは、
その状態を「今ONにするか」「OFFにするか」
を切り替えているだけなんですよね。
もう一つ大きかった気づきが、
初期状態もJavaScriptの処理の一部だということ。
const でDOMを取得した時点から、
もうJSは「完成したHTML」を前提に動き始めている。
だから、
・最初からボタンを押せない状態にしたい
・初期表示では文章を隠したい
こういった制御も、JSで明示的に書いてあげる必要がある。
今日は
「JSは魔法じゃない」
「CSSと役割分担して動いている」
ということが、やっと腹落ちしました。
ドラクエでいう、ブリザードAとB、せつげんりゅうがいて、
こいつにメラ打ったら炎属性弱点だから打てるぜMPこれだけ使うぜってのがDOMで、
魔法使いが「あ、じゃあ打ちます!」ってのがJavaScriptなんだなって
(違ってたらすみません><)。
まだまだ基礎練習の段階ですが、
地に足をつけて理解を積み上げていきます。
同じように「JSが動くけど怖い」と感じている方の参考になれば嬉しいです。
P.S. ここ最近プログラミングの勉強を一日10時間やってるんですけど、頭の中プログラミングでいっぱいになって、なかなか熟睡できません。
すでにフリーランスされてる方で、おすすめの熟睡方法知ってるよって方
おしえてくださいお願いします(^^;)