Open5

JS

sayasaya

配列の操作を行う関数

push(): 配列の末尾に要素を追加します。
pop(): 配列の最後の要素を取り出し、その要素を返します。
shift(): 配列の最初の要素を取り出し、その要素を返します。
unshift(): 配列の最初に一つ以上の要素を追加し、新しい配列の長さを返します。
splice(): 配列の特定の位置に要素を追加または削除します。
slice(): 配列の一部を取り出して新たな配列を作成します。
map(): 配列内の全ての要素それぞれに関数を適用し、その結果からなる新しい配列を作成します。
filter(): 配列内の要素それぞれにテスト関数を適用し、テストにパスした要素からなる新しい配列を作成します。
reduce(): 配列の各要素に対して(左から右へ)関数を適用し、単一の出力値を生成します。

数値操作に関する関数

Math.max(): 2つ以上の数値の最大値を返します。
Math.min(): 2つ以上の数値の最小値を返します。
Math.round(): 引数の数値を四捨五入します。
Math.floor(): 引数として与えられた数値以下の最大の整数を返します。
Math.ceil(): 引数として与えられた数値以上の最小の整数を返します。
Math.random(): 0以上1未満の乱数を生成します。

文字列操作に関する関数

charAt(): 指定された位置にある文字を返します。
indexOf(): 指定した値が最初に現れるインデックスを返します。見つからない場合は-1を返します。
lastIndexOf(): 指定した値が最後に現れるインデックスを返します。見つからない場合は-1を返します。
slice(): 文字列の一部を取り出して新たな文字列を作成します。
split(): 文字列を指定したセパレータで分割し、その部分文字列を含む配列を返します。
substring(): 二つのインデックスを使用して文字列の一部を取り出します。
replace(): 文字列内で一部の文字を他の文字に置き換えます。

条件分岐やループ

if...else: 条件に基づいて異なる処理を行います。
switch: 多くの条件から一つを選んで処理を行います。
for: 一定の回数だけループ処理を行います。
while: 条件が満たされている間、ループ処理を行います。

sayasaya

if文: JavaScriptのif文は、指定された条件が真(true)である場合に特定のコードブロックを実行します。基本的な構文は以下の通りです。

if (条件) {
    // 条件が真のときに実行されるコード
}

if文はelse句と組み合わせて使うこともできます。else句のコードブロックは、if文の条件が偽(false)のときに実行されます。

if (条件) {
    // 条件が真のときに実行されるコード
} else {
    // 条件が偽のときに実行されるコード
}

for文: for文は、指定した回数だけコードブロックを繰り返し実行します。基本的な構文は以下の通りです。

for (初期化; 条件; 更新) {
    // 条件が真の間、実行されるコード
}

例えば、0から9までの数字をコンソールに出力するためのfor文は以下のようになります。

for (let i = 0; i < 10; i++) {
    console.log(i);
}

forEach文: forEachメソッドは、配列の各要素に対して与えられた関数を実行します。基本的な構文は以下の通りです。

array.forEach(function(value, index, array) {
    // value: 現在の要素
    // index: 現在の要素のインデックス
    // array: メソッドが呼び出された配列
});

例えば、配列の各要素をコンソールに出力するためのforEach文は以下のようになります。

let array = [1, 2, 3, 4, 5];
array.forEach(function(value) {
    console.log(value);
});
sayasaya

二重for文を使用して2次元配列の要素を一つずつ取り出す方法は次のようになります。

例えば、次のような2次元配列があるとします:

let array = [
  [1, 2, 3],
  [4, 5, 6],
  [7, 8, 9]
];

この2次元配列から一つずつ要素を取り出すには、次のような二重for文を使用します:

for (let i = 0; i < array.length; i++) {
    for (let j = 0; j < array[i].length; j++) {
        console.log(array[i][j]);  // 配列の要素を一つずつ取り出して表示
    }
}

ここで、array.lengthは配列の外側の長さ(すなわち、内側の配列の数)を表し、array[i].lengthはi番目の内側の配列の長さ(すなわち、その配列の要素の数)を表します。array[i][j]は、i番目の内側の配列のj番目の要素を参照します。

このコードは、最初に外側の配列をループし(iについて)、次に各内側の配列をループします(jについて)。これにより、2次元配列の全ての要素を一つずつ取り出すことができます。

sayasaya

配列操作の関数の使用例

let arr = [1, 2, 3, 4, 5];

arr.push(6); // arr: [1, 2, 3, 4, 5, 6]
let lastElement = arr.pop(); // lastElement: 6, arr: [1, 2, 3, 4, 5]
let firstElement = arr.shift(); // firstElement: 1, arr: [2, 3, 4, 5]
arr.unshift(1); // arr: [1, 2, 3, 4, 5]
let newArr = arr.slice(1, 4); // newArr: [2, 3, 4], arr: [1, 2, 3, 4, 5]
arr.splice(2, 1, 'three'); // arr: [1, 2, 'three', 4, 5]
let doubled = arr.map(function(element) { return element * 2; }); // doubled: [2, 4, 'threethree', 8, 10]
let even = arr.filter(function(element) { return element % 2 === 0; }); // even: [2, 4]
let sum = arr.reduce(function(acc, element) { return acc + element; }, 0); // sum: 15

数値操作関数の使用例

let max = Math.max(1, 2, 3, 4, 5); // max: 5
let min = Math.min(1, 2, 3, 4, 5); // min: 1
let rounded = Math.round(1.6); // rounded: 2
let floored = Math.floor(1.6); // floored: 1
let ceiled = Math.ceil(1.6); // ceiled: 2
let random = Math.random(); // random: 0以上1未満の乱数

文字列操作関数の使用例

let str = "Hello, World!";

let char = str.charAt(0); // char: 'H'
let index = str.indexOf('o'); // index: 4
let lastIndex = str.lastIndexOf('o'); // lastIndex: 8
let sliced = str.slice(0, 5); // sliced: "Hello"
let split = str.split(', '); // split: ["Hello", "World!"]
let substring = str.substring(0, 5); // substring: "Hello"
let replaced = str.replace('World', 'there'); // replaced: "Hello, there!"

条件分岐とループの使用例

let x = 10;

// if...else
if (x > 5) {
    console.log('x is greater than 5');
} else {
    console.log('x is not greater than 5');
}

// switch
switch (x) {
    case 5:
        console.log('x is 5');
        break;
    case 10:
        console.log('x is 10');
        break;
    default:
        console.log('x is neither 5 nor 10');
        break;
}

// for
for (let i = 0; i < x; i++) {
    console.log(i);
}

// while
let i = 0;
while (i < x) {
    console.log(i);
    i++;
}
sayasaya

Mathオブジェクトは、JavaScriptの組み込みオブジェクトで、数学的な定数や関数を提供しています。
このオブジェクトは、静的なプロパティとメソッドのみを持っており、インスタンスを作成することはできません。また、コンストラクタとしても使用することはできません。

以下に、Mathオブジェクトの主な特徴と利用可能ないくつかのプロパティやメソッドを示します。

定数

  • Math.E: 自然対数の底(約2.718)
  • Math.PI: 円周率(約3.14159)
  • Math.LN2: 2の自然対数(約0.693)
  • Math.LN10: 10の自然対数(約2.303)
  • Math.LOG2E: 2を底とするeの対数(約1.442)
  • Math.LOG10E: 10を底とするeの対数(約0.434)

数学的な関数

  • Math.abs(x): xの絶対値
  • Math.ceil(x): x以上の最小の整数
  • Math.floor(x): x以下の最大の整数
  • Math.max(x, y, ...) : 引数の中で最大の数値
  • Math.min(x, y, ...) : 引数の中で最小の数値
  • Math.pow(x, y): xのy乗
  • Math.random(): 0から1までの範囲でランダムな数値(1は含まれない)
  • Math.round(x): xの四捨五入
  • Math.sqrt(x): xの平方根
    ... など、多数の関数があります。

例:

javascript
let randomNum = Math.random(); // 0 以上 1 未満のランダムな数値を取得
let roundedNum = Math.round(2.4); // 2
let maximum = Math.max(5, 10, 15, 20); // 20