09ビルトイン(組み込み)オブジェクト
9-1 Stringオブジェクト
JavaScriptにおいて文字列(String)を定義する場合には、シングルクォート(’)、ダブルクォート(”)、またはバッククォート(`)を使います。これらは文字列のプリミティブ型(最も基本的なデータ型)を生成しますが、JavaScriptではプリミティブ型の文字列に対しても、Stringオブジェクトのメソッドを使用することができます。これはJavaScriptの自動的な型変換(ボックス化)によるものです。
このオブジェクトにはいくつか便利なプロパティやメソッドが存在します。
lengthプロパティ
文字列の長さ(文字数)を取得します。
console.log("こんにちは".length); // 出力: 5charAtメソッド
指定された位置にある文字を返します。
console.log("こんにちは".charAt(2)); // 出力: にindexOfメソッド
指定された値が最初に出現するインデックスを返します。値が見つからない場合は-1を返します。
console.log("こんにちは、世界".indexOf("世界")); // 出力: 6sliceメソッド
文字列の指定された部分を抽出して新しい文字列として返します。
console.log("こんにちは、世界".slice(0, 5)); // 出力: こんにちはtoUpperCaseメソッドとtoLowerCaseメソッド
文字列をそれぞれ大文字や小文字に変換します。
console.log("Hello".toUpperCase()); // 出力: HELLO
console.log("WORLD".toLowerCase()); // 出力: worldreplaceメソッド
文字列内の指定された値を別の値に置換します。
console.log("Apple".replace("A", "a")); // 出力: applesplitメソッド
文字列を指定された区切り文字で分割し、配列として返します。
console.log("りんご,みかん,ばなな".split(","));
// 出力: ['りんご', 'みかん', 'ばなな']これらのプロパティやメソッドを使うことで、文字列の様々な操作を簡単に行うことができます。
JavaScriptでプログラミングを行う際には、これらの便利な機能を積極的に利用してみてください。
9-2 Arrayオブジェクト
配列(Arrayオブジェクト)は、複数の値を一つの変数で管理するための便利なツールです。
これにより、複数の名前や番号などを順番に並べて保存し、必要に応じてそれらにアクセスしたり操作したりすることができます。
Arrayオブジェクトを定義する基本的な方法は、角括弧[]を使用して配列リテラルを作成することです。配列内の各アイテムはコンマで区切られます。
const fruits = ['りんご', 'バナナ', 'メロン'];
console.log(fruits[0]); // 出力: りんご
console.log(fruits[1]); // 出力: バナナ
console.log(fruits[2]); // 出力: メロンArrayオブジェクトにもいくつか便利なプロパティやメソッドは存在します。
length
配列の長さ(要素の数)を取得します。
let fruits = ['りんご', 'バナナ', 'メロン'];
console.log(fruits.length); // 出力: 3push()
配列の末尾に一つ以上の要素を追加し、新しい長さを返します。
fruits.push('オレンジ');
console.log(fruits); // 出力: ['りんご', 'バナナ', 'メロン', 'オレンジ']pop()
配列の末尾から要素を取り除き、その要素を返します。
let lastFruit = fruits.pop();
console.log(lastFruit); // 出力: オレンジ
console.log(fruits); // 出力: ['りんご', 'バナナ', 'メロン']shift()
配列の先頭から要素を取り除き、その要素を返します。
let firstFruit = fruits.shift();
console.log(firstFruit); // 出力: りんご
console.log(fruits); // 出力: ['バナナ', 'メロン']unshift()
配列の先頭に一つ以上の要素を追加し、新しい長さを返します。
fruits.unshift('ストロベリー');
console.log(fruits); // 出力: ['ストロベリー', 'バナナ', 'メロン']indexOf()
指定された要素を配列で検索し、そのインデックスを返します。見つからない場合は-1を返します。
let index = fruits.indexOf('バナナ');
console.log(index); // 出力: 1slice()
配列の一部をコピーして新しい配列オブジェクトとして返します。
let citrus = fruits.slice(1, 3);
console.log(citrus); // 出力: ['バナナ', 'メロン']splice()
配列の既存の要素を削除または置換し、新しい要素を追加して、変更された配列を返します。
fruits.splice(2, 0, 'キウイ');
console.log(fruits); // 出力: ['ストロベリー', 'バナナ', 'キウイ', 'メロン']concat()
現在の配列に一つ以上の配列を結合した新しい配列を返します。
let moreFruits = fruits.concat(['パイナップル', 'マンゴー']);
console.log(moreFruits);
// 出力: ['ストロベリー', 'バナナ', 'キウイ', 'メロン', 'パイナップル', 'マンゴー']join()
配列のすべての要素を連結して、一つの文字列として返します。
let allFruits = fruits.join(', ');
console.log(allFruits); // 出力: ストロベリー, バナナforEach()
配列の各要素に対して与えられた関数を実行します。
fruits.forEach(function(item, index) { console.log(index, item); }); // 出力:
// 0 りんご
// 1 バナナ
// 2 メロンmap()
配列内のすべての要素に対して与えられた関数を呼び出し、その結果から新しい配列を生成します。
let lengths = fruits.map(function(item) { return item.length; });
// 出力: [3, 4, 2]filter()
テスト関数を満たすすべての要素からなる新しい配列を生成します。
let longFruits = fruits.filter(function(item) { return item.length > 5; });
// 出力: []
// 注意: この例では、'りんご', 'バナナ', 'メロン' のいずれも5文字以下なので、出力は空の配列になります。より詳細な説明は次のセクションで行います。
コメントを残す