TypeScript学習日記(2026-01-25)

今日のゴール

  • 変数・型の復習
  • 配列の基本操作(参照・length・push)
  • for ループで配列を回す

学んだこと(詳細)

1. 変数と型の基礎

  • string / number / boolean の型を使い分ける
  • 関数の引数と戻り値にも型を付ける

サンプル(現在の src/index.ts より)

const name: string = "TypeScript";
const year: number = 2026;
const isLearning: boolean = true;

2. 関数の基礎(引数・戻り値)

  • 関数は「入力(引数)」→「処理」→「出力(戻り値)」
  • 例:数字2つを足して返す
function add(a: number, b: number): number {
  return a + b;
}
 
console.log("2 + 3 =", add(2, 3));

3. if / else if の基本

  • 条件に応じて処理を分ける
const temp = 35;
 
if (temp >= 40) {
  console.log("猛暑");
} else if (temp >= 20) {
  console.log("快適");
} else {
  console.log("寒い");
}

4. 配列の基本

  • 配列は「同じ種類の値をまとめる箱」
  • 0から始まる番号(index)で取り出す
  • length は要素数、最後の要素は length - 1
const names: string[] = ["A", "B", "C"];
console.log(names[1]); // "B"
 
const scores: number[] = [80, 90, 70];
console.log("スコア一覧:", scores);

最後の要素の取り方

const fruits: string[] = ["apple", "banana", "orange"];
fruits.push("grape");
console.log("果物の数:", fruits.length);
console.log("最後の果物:", fruits[fruits.length - 1]);

5. 配列の追加(push)

  • push は配列の最後に要素を追加する
names.push("hideki");
scores.push(8000);
console.log("names:", names);
console.log("scores:", scores);

6. forループで配列を回す

  • 0から length - 1 まで順番に取り出す
for (let i = 0; i < fruits.length; i++) {
  console.log("fruit:", fruits[i]);
}

7. 配列の削除(pop)

  • pop は配列の最後の要素を削除する
  • 削除された要素が戻り値として返る
const removedFruit = fruits.pop();
console.log("削除した果物:", removedFruit);
console.log("削除後の果物一覧:", fruits);

8. 配列の先頭操作(shift / unshift)

  • shift は先頭の要素を削除
  • unshift は先頭に要素を追加
const firstFruit = fruits.shift();
console.log("先頭から削除した果物:", firstFruit);
console.log("shift後の果物一覧:", fruits);
 
fruits.unshift("melon");
console.log("unshift後の果物一覧:", fruits);

今日のメモ(理解できたこと)

  • 配列の最後の要素は length - 1 で取れる
  • for は「0から最後まで順番に見る」ための仕組み
  • push は配列専用で、配列以外に使うとエラー
  • pop は最後の要素を削除し、削除した値を返す
  • shift は先頭を削除、unshift は先頭に追加

次回やること(予定)

  • 配列 × for のミニ課題
  • splice で任意の位置の削除
  • オブジェクトの超入門

実行手順(再確認)

npm run build
npm start

参考:今日の src/index.ts

const name: string = "TypeScript";
const year: number = 2026;
const isLearning: boolean = true;
 
function greet(target: string): string {
  return `こんにちは、${target}!`;
}
 
function add(a: number, b: number): number {
  return a + b;
}
 
console.log(greet(name));
console.log("学習中?", isLearning);
console.log("今年:", year);
console.log("2 + 3 =", add(2, 3));
 
// --- else if 練習テンプレ ---
const temp = 35;
 
if (temp >= 40) {
  console.log("猛暑");
} else if (temp >= 20) {
  console.log("快適");
} else {
  console.log("寒い");
}
 
// --- 配列の練習テンプレ ---
const names: string[] = ["A", "B", "C"];
console.log(names[1]);
 
const scores: number[] = [80, 90, 70];
console.log("スコア一覧:", scores);
 
// --- 配列の push 練習テンプレ ---
names.push("hideki");
scores.push(8000);
console.log("names:", names);
console.log("scores:", scores);
console.log("配列の長さ:", names.length, scores.length);
 
const fruits: string[] = ["apple", "banana", "orange"];
console.log("最初の果物:", fruits[0]);
fruits.push("grape");
console.log("果物一覧:", fruits);
console.log("果物の数:", fruits.length);
console.log("最後の果物:", fruits[fruits.length - 1]);
 
// --- for ループの練習テンプレ ---
for (let i = 0; i < fruits.length; i++) {
  console.log("fruit:", fruits[i]);
}
 
// --- 配列の pop 練習テンプレ ---
const removedFruit = fruits.pop();
console.log("削除した果物:", removedFruit);
console.log("削除後の果物一覧:", fruits);
 
// --- 配列の shift / unshift 練習テンプレ ---
const firstFruit = fruits.shift();
console.log("先頭から削除した果物:", firstFruit);
console.log("shift後の果物一覧:", fruits);
 
fruits.unshift("melon");
console.log("unshift後の果物一覧:", fruits);