# JavaScript の基礎 (React Native) > 変数 (let/const/var)、型、closures、this、arrow functions、destructuring、spread/rest - 25 面接問題 - Junior - [面接問題: React Native](https://sharpskill.dev/ja/technologies/react-native/interview-questions.md) ## 1. JavaScript における let と var の主な違いは何ですか? **回答** let はブロックスコープ (block scope) を持ち、var は関数スコープ (function scope) を持ちます。つまり、let で宣言された変数は定義されたブロック内 (波括弧の中) でのみアクセス可能ですが、var は関数全体でアクセス可能です。この違いは、hoisting に関連するバグや、変数が意図したコンテキストの外に漏れ出すことを防ぐために非常に重要です。 ## 2. let 変数を宣言前にアクセスすると何が起こりますか? **回答** 変数が Temporal Dead Zone (TDZ) にあるため、ReferenceError がスローされます。undefined 値で hoisting される var とは異なり、let 変数は hoisting されますが、宣言されるまでアクセスできません。この一時的なデッドゾーンは、変数が定義される前に使用されるプログラミングエラーの検出に役立ちます。 ## 3. JavaScript における const の主な特徴は何ですか? **回答** const は参照の再代入を防ぎますが、内容の変更は防ぎません。プリミティブ型の場合、値を変更できないことを意味します。オブジェクトや配列の場合、参照は同じままですがプロパティや要素は変更できます。デフォルトで const を使用することは、変数を再代入しないという意図を表現するため、良い習慣です。 ## さらに22問利用可能 - JavaScript のプリミティブ型は何ですか? - JavaScript における typeof null の結果は何ですか? 無料で登録: https://sharpskill.dev/ja/login ## その他のReact Native面接トピック - [React の基礎](https://sharpskill.dev/ja/technologies/react-native/interview-questions/react-fundamentals.md): 20問, Junior - [React Native の基礎](https://sharpskill.dev/ja/technologies/react-native/interview-questions/react-native-basics.md): 22問, Junior - [React Hooks](https://sharpskill.dev/ja/technologies/react-native/interview-questions/react-hooks.md): 20問, Junior - [React と React Native のための TypeScript](https://sharpskill.dev/ja/technologies/react-native/interview-questions/typescript-for-react-native.md): 22問, Junior - [React Native のコンポーネントと API](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-components-api.md): 20問, Junior - [React Native のスタイリングとレイアウト](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-styling-layout.md): 18問, Junior - [React Native ナビゲーション](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-navigation.md): 22問, Mid-Level - [React Native の状態管理](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-state-management.md): 24問, Mid-Level - [React Native のネットワーキングと API](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-networking-api.md): 20問, Mid-Level - [データの永続化](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-data-persistence.md): 20問, Mid-Level - [フォームとバリデーション](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-forms-validation.md): 18問, Mid-Level - [React Native アニメーション](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-animations.md): 22問, Mid-Level - [Native Modules & Bridge](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-native-modules.md): 20問, Mid-Level - [プラットフォーム固有のコード](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-platform-specific-code.md): 18問, Mid-Level - [権限とデバイスAPI](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-permissions-apis.md): 20問, Mid-Level - [Push Notifications](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-push-notifications.md): 18問, Mid-Level - [React Native のテスト](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-testing.md): 20問, Mid-Level - [React Native のデバッグ](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-debugging.md): 18問, Mid-Level - [Build & Deployment](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-build-deployment.md): 20問, Mid-Level - [Expo vs React Native Bare](https://sharpskill.dev/ja/technologies/react-native/interview-questions/expo-vs-bare-rn.md): 18問, Mid-Level - [パフォーマンス最適化](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-performance-optimization.md): 24問, Senior - [メモリ管理](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-memory-management.md): 20問, Senior - [Architecture Patterns](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-architecture-patterns.md): 22問, Senior - [React Native の New Architecture](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-new-architecture.md): 24問, Senior - [セキュリティのベストプラクティス](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-security-best-practices.md): 20問, Senior - [Offline-First Architecture](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-offline-first.md): 20問, Senior - [React Native の CI/CD](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-ci-cd.md): 20問, Senior - [Monorepoとコード共有](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-monorepo-architecture.md): 18問, Senior - [高度なトピック](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-advanced-topics.md): 22問, Senior - [アプリのライフサイクルとバックグラウンド実行](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-app-lifecycle-background.md): 20問, Mid-Level - [認証とセッション管理](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-auth-session-management.md): 22問, Mid-Level - [Monitoring & Crash Reporting](https://sharpskill.dev/ja/technologies/react-native/interview-questions/rn-monitoring-crash-reporting.md): 20問, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/ja/technologies/react-native/interview-questions/javascript-essentials