JS 006

9703 ワード

JS基本文法


オブジェクト(object)


資料型の一部として,多様な価値のもう一つの価値を収集した.配列、関数、配列、または非関数オブジェクトに分けることができます.

1.配列(array)


配列のデフォルト


複数の価格を組み合わせた場合に使用します.行列を作るために、カッコ[]で囲めばいいです.値の間はカンマで区切られます.
> const fruits = ['사과', '오렌지', '배', '딸기']
これらの配列の内部の値を個別に読み込むことができます.最初の桁数(index)は0から始まることに注意してください.配列内部の値を要素(element)と呼びます.
> const fruits = ['사과', '오렌지', '배', '딸기']
> console.log(fruits[0]);		// 1번째
> console.log(fruits[1]);		// 2번째
> console.log(fruits[2]);		// 3번째
> console.log(fruits[3]);		// 4번째

사과
오렌지
배
딸기
配列内には、変数、数値、文字列などの任意の値を繰り返し入力できます.配列に配列を入れることもできます.これを2 D配列と呼びます.また、空の配列を作成することもできます.
> const ArrayofArray = [[1, 2,  3], [4, 5], 1, true, undefined, null, '배열', 1, 1];
> ArrayofArray[0]			//[1, 2, 3]
> const a = 10;
> const b = 20;
> const variableArray = [a, b, 30];
> variableArray[1];			// 20
> const empty = [];

要素の個数を求めます


配列名.lengthを用いて配列された要素の個数を求めることができる.
> const everything = ['사과', 1, undefined, true, '배열', null];
  console.log(everything.length);
  
  6
空の値も有効な値であるため、要素カウントに含まれます.
> const emptyValue = [null, undefined, false, '', NaN]
  console.log(emptyValue.length);
  
  5
必要なインデックスの要素を見つけることができます.すなわち、要素の数は最後の要素のインデックス1より大きい.
> const findLastElement = ['a', 'b', 'c', 'd', 'e'];
  console.log(findLastElement[findLastElement.length -1]);
  
  e

アレイ内の要素の追加、変更または削除


並べたら、修正できます.要素を追加したり、特定のインデックスの要素を変更したり削除したりできます.
配列の後ろに追加するには、3つの方法を使用します.インデックス番号を直接入力したり、lengthを使用して最後のインデックスを作成したり、pushを使用して最後に要素を追加したりすることができます.
> const target = ['a', 'b', 'c', 'd', 'e'];
  target[5] = 'f';
  console.log(target);
  
  (6) ['a', 'b', 'c', 'd', 'e', 'f']
> const target2 = ['가', '나', '다', '라', '마'];
  target2[target2.length] = '바';
  console.log(target2);
  
  (6) ['가', '나', '다', '라', '마', '바']
> const target3 = ['가', '나', '다', '라', '마'];
  target3.push('바');
  console.log(target3);
  
  (6) ['가', '나', '다', '라', '마', '바']
unshiftを使用すると、配列の一番前に要素を追加できます.
> const target4 = ['나', '다', '라', '마', '바'];
  target4.unshift('가');
  console.log(target4);
   
  (6) ['가', '나', '다', '라', '마', '바']
constを使用して変数を宣言しますが、配列内部の値を変更できることに注意してください.同じ変数に新しい値を代入することはできません.代入されたオブジェクト(配列、関数など)の内部属性や要素を変更できます.
> const target5 = ['a', 'b', 'c', 'd', 'e'];
  target5 = ['f', 'g'];				// 불가능
  target5[0] = 'h';				// 가능
必要なインデックスに変更する値を加えると、配列内の要素を変更できます.
> const target6 = ['가', '나', '다', '라', '마'];
  target6[3] = '카';
  console.log(target6);
  
  (5) ['가', '나', '다', '카', '마'];
popを使用して、配列された最後の要素を除去することができる.
> const target7 = ['가', '나', '다', '라', '마'];
  target7.pop();
  console.log(target7);
  
  (4) ['가', '나', '다', '라'];
shiftを使用して、配列された最初の要素を除去することができる.
> const target8 = ['가', '나', '다', '라', '마'];
  target8.shift();
  console.log(target8);
  
  (4) ['나', '다', '라', '마'];
配列された中間要素を除去するためには、splice機能が必要である.(splice(削除する要素のインデックス、削除する数).
> const target9 = ['가', '나', '다', '라', '마'];
  target9.splice(1, 1);
  console.log(target9);
  
  (4) ['가', '다', '라', '마'];
> const target10 = ['가', '나', '다', '라', '마'];
  target10.splice(2, 2);
  console.log(target10);
  
  (3) ['가', '나', '마'];
ただし、削除する数を指定しないと、常にすべての要素が削除されます.
> const target11 = ['가', '나', '다', '라', '마'];
  target11.splice(1);
  console.log(target11);
  
  (1) ['가'];
また、削除した場所に新しい値を追加することもできます.また、この値を使用しないで特定の場所に新しい値を追加することもできます.
> const target12 = ['가', '나', '다', '라', '마'];
  target12.splice(1, 3, '타', '파');
  console.log(target12);
  
  (4) ['가', '타', '파', '마'];
> const target13 = ['가', '나', '다', '라', '마'];
  target13.splice(2, 0, '타', '파');
  console.log(target13);
  
  (7) ['가', '나', '타', '파', '다', '라', '마'];

配列内の要素の検索

includesを使用して、配列に特定の要素が存在するかどうかを検索します.要素が配列内に存在する場合はtrue、存在しない場合はfalseである.
> const target14 = ['가', '나', '다', '라', '마'];
  const result1 = target14.includes('다');
  const result2 = target14.includes('카');
  console.log(result1);
  console.log(result2);
  
  true
  false
1番目の要素から検索を開始するindexOfと、最後の要素から検索を開始するlastIndexOfとを使用して、特定の要素がいくつかのインデックスに存在することが分かる.要素が配列内にない場合は、-1を返します.
> const target15 = ['라', '나', '다', '라', '다'];
  const result1 = target15.indexOf('다');
  const result2 = target15.lastIndexOf('라');
  const result3 = target15.indexOf('가');
  console.log(result1);
  console.log(result2);
  console.log(result3);

  2
  3
  -1
配列は値をリストするので、繰り返し文のようによく使われます.次の方法は、非配列文字列でも使用できます.
> const target16 = ['가', '나', '다', '라', '마'];
  let i = 0;
  while (i < target16.length) {
    console.log(target16[i]);
    i++;
  }
  
  가
  나
  다
  라
  마
< 4
> const target17 = ['가', '나', '다', '라', '마'];
  for (let i = 0; i < target17.length; i++) {
    console.log(target17[i]);
  }
  
  가
  나
  다
  라
  마
< undefined
回答)次の配列からすべての「ra」を削除します.const arr = ['가', '라', '다', '라', '마', '라'];
> while (arr.indexOf('라') > -1) { 		// arr.indexOf('라') !== -1 도 가능
    arr.splice(arr.indexOf('라'), 1);
    }
  console.log(arr);
  
  (3) ["가", "다", "마"]
arr.indexOf('라')の重複を解消するために、変数は以下のように加えられる.
> let index = arr.indexOf('라');
  while (index > -1) {
    arr.splice(index, 1);
    index = arr.indexOf('라');		// 이 부분이 없으면 동작하지 않음.
    }
  console.log(arr);

2.関数(function)


一定の動作を実行するコードを関数と呼ぶ.関数を記述するために、定語functionまたは矢印記号=>が使用される.
function() {}
() => {}
関数に関数名を付ける方法は3つあります.関数名を指定しない場合は、匿名関数となり、宣言されたコードでのみ使用できます.
function a() {}				// 함수 선언문(function declaration statement)
const b = function() {};		// 함수 표현식(function expression)
const c = () => {};			// 함수 표현식(function expression) & 화살표 함수
一般的にif文、for文、while文、関数宣言文のカッコの後ろにセミコロンがあります.貼らない.
関数を記述して宣言する動作を呼び出しと呼びます.この関数を複数回呼び出すと、複数回実行されます.
> function a() {
    console.log('Hello');
    console.log('Function!');
  }
  a();
  a();
  a();
  
  Hello
  Function!
  Hello
  Function!
  Hello
  Function!
関数を宣言して実行を呼び出すと、undefinedの値が返されます.これらの戻り値を作成するには、関数でreturn '반환값';に設定し、呼び出し時に戻り値をロードします.つまり、関数を宣言するときのデフォルト値はreturn undefined;です.(省略可能)
> function a() {}			// return undefined 기본값
< undefined
> function b() {
    return '반환값 설정하기';
  }
< undefined
> b()
< "반환값 설정하기"
また、returnを使用して戻り値を設定すると、関数はその位置から終了し、その値を返します.したがって、以降の動作文は実行されません.
> function c() {
    return 'hello';
    console.log('hi');
  }
< undefined
> c()
< "hello"
戻り値は条件付きで実行できます.
> function d() {
    if (true) {
      return 'hello';
    }
    console.log('hi');
  }
< undefined
> d()
< "hello"					// if문의 조건이 true인 경우
< "hi"						// if문의 조건이 false인 경우