回答へのコメント(返信)ができないのはこの投稿が「質問」ではなく「意見交換」だからでしょうね
文法的(または慣習的)におかしいですか?
文法的にはおかしくないです。(エラーは起きないでしょう)
期待通りの動作かどうかは何を期待するかに依りますが。
セミコロン無しに改行する場合に、「Automatic semicolon insertion」の仕組みが動作する点を把握してください。
let直後でセミコロンを挿入すると構文エラーになるので、ASI対象にならずに変数はすべてlet宣言になります。
慣習的には、他の方も言う通りプロジェクト次第ですので何とも言えません。
私が指揮するならやりません。
少し分かりにくいと思いますか?
分かりやすくていいと思いますか?
特に何も思いませんか?
他の方も言うように、プロジェクトの方針で"黒とされているものは黒として扱う"のが前提です。
そのうえで、個人的な感性で言えば。
この書き方を許すプロジェクトでは、a=b,と書かれた行が、aを宣言しているとしてletなのかconstなのか(省略)varなのか、宣言済みのaへの単なる代入+カンマ演算子なのか、同じ行内で「わからない」ので、思考リソースがかさばることになります。
読み取るのが、わかりにくいというかめんどくさいです。
let、const、varをカンマ区切りにしない・省略しないこと(あるいは同じ行内でカンマ区切りで宣言すること。(ただし、他の方の指摘通り差分で不利を被る))としていれば、あるていど避けられる面倒です。