Skip to content

MS_JavaScript

nishi_74322014 edited this page Aug 21, 2026 · 1 revision

JavaScript

概要

下記リンク先に記載。

補足(本ページはハブである): 原文が「下記リンク先に記載」と
しているだけの、リンク集としてのページである。
内容の本体は
**開発基盤部会 Wiki(DNET_JavaScript.md)**側にある。

本 Wiki 内で JavaScript に関連するページを、
移行の進捗に合わせてここに集約しておく。

分類 ページ
言語 TypeScript
SPA の全体像 ASP.NET SPA / ASP.NET Core SPAテンプレート
テンプレート Angular / React.js / React+Redux
.NET との連携(廃止済み) JavaScript Services / Node Services / Spa Services
開発環境 Visual Studio CodeによるSPA開発 / Web Essentials / .esproj
ASP.NET 側の話題 部分描画とJavaScript / ASP.NET の BundleConfig

補足(.NET 開発者から見た JavaScript の現在): 本 Wiki の文脈
(マイクロソフト系技術)で押さえておくべき点を整理しておく。

① 「Node.js」と「ブラウザの JavaScript」は別の実行環境

【ブラウザ】  DOM、fetch、localStorage がある。ファイル I/O はない
【Node.js】   ファイル I/O、プロセス、ネットワークがある。DOM はない

  → 同じ言語だが、【使える API が違う】
  → 「JavaScript を書く」だけでは、どちらの話か決まらない

原文の Node Services / 帳票出力
「Node.js(サーバ側)」とわざわざ書いているのは、この区別のためである。

② .NET から JavaScript を使う 4 つの場面

場面 内容
ブラウザ側の実装 最も普通。SPA でも MPA でも
ビルド ツールとして Vite / webpack / esbuild。npm 経由
サーバ側で JS を実行 原則やらないJavaScript Services
Blazor から呼ぶ IJSRuntime で JS 相互運用

③ C# 開発者が押さえておくべき言語差

【型】
   ・実行時に型が変わる(動的型付け)
   ・== は型変換を伴う → 【=== を使う】
   ・null と undefined の 2 つがある

【非同期】
   ・async/await の構文は C# とほぼ同じ ★ 学習コストが低い
   ・ただし【シングル スレッド】(イベント ループ)
     → C# のような並列実行ではない

【this】
   ・呼び出し方で this が変わる(C# と大きく違う)
   ・アロー関数(=>)は this を束縛しない → 現在はこちらが主流

【モジュール】
   ・ESM(import/export)が標準。CommonJS(require)は Node の旧方式

④ TypeScript を使うのが .NET 開発者には自然

・静的型付け=コンパイル時に誤りが分かる
・C# と同じ設計者(Anders Hejlsberg)による言語
・IDE の補完・リファクタリングが効く
・【現在の JS エコシステムでは事実上の標準】★

詳細は TypeScript を参照。

参考

開発基盤部会 Wiki

  • JavaScript(DNET_JavaScript.md

Tags: 移行, プログラミング, ASP.NET, ASP.NET Web API, ASP.NET SPA, JavaScript

NetDevInfraWiki

マイクロソフト系技術情報 Wiki
Open 棟梁 Wiki

(未着手)

開発基盤部会 Wiki

移行管理: DONETODO

Clone this wiki locally