JavaScriptの基礎文法の整理



変数と定数の宣言


変数へんすう:let,var
定数:const
未定義:未定義
null:存在しません
Nan:Nota Number(失敗した結果)
let a;

console.log(a === null) // false
console.log(a === undefined) // true

a = null

console.log(a===undefined)
console.log(a===null)

"hi" - 5  // NaN

ブラウザインタフェース機能関数

alert:メッセージの表示prompt:入力を求めると同時に入力フィールドを提供し、「キャンセル」を押してnullを返すconfirm:「OK」または「キャンセル」を押したウィンドウが表示されます.trueまたはfalseを返します

せいけいかん


Number(true)//1
Boolean("a")//true

演算子


+、-、*、/、%などの基本演算子、および+、--、+=
単項演算子「+」を使用すると数値に変換されます.
  let x = 1;
  alert(+x); // 1

  alert(+true); // 1

カンマ演算子

let a = (1+2, 3+4);

alert(a); // 7

// 한 줄에서 세 개의 연산이 수행됨.
for (a=1, b=3, c=a*b; a<10, a++){
    ...
}

一致演算子

==は0とfalseを区別できません.
一致演算子===を使用して、形状を変換することなく値を比較します.
比較演算子の被演算子(
  • マッチング演算子===を除く)がnullとして定義されていないか、またはnullであることを確認します.
  • 注意
  • がnullで定義されていない、またはnullの可能性のある変数を>=、>、<、<=の被演算子にしないでください.
  • さんこうえんざんし

    let result = (age > 26) ? true : false

    論理演算子


    || or
    && and
    ! NOT

    ドアが

    if (color === "navy"){
        return 'Good!'
      } else if (color === "yellow"){
        return "Bad!"
      } else {
        return "Whatever!"
      }

    複文

      for (let i=0; i<10; i++){
          console.log(i);
      }
    
      var i =0
      while(i<5){
          console.log(i);
          i++;
      }
    
      switch(x) {
          case 'value1':
              break
          case 'value2':
              break
          ...
          default:
              break
      }
    continue,break利用可能

    関数宣言


    JavaScriptは、関数を特殊なタイプの値と見なします.
    他の言語のように「特別な操作を実行する構造」とは見なされません.
    function name(parameters) {
        alert('hi');
        return 0;
    }
    パラメータに値が渡されない場合は、この値はUndefindです.
    未定義を避けるには、デフォルト値(default value)を設定するだけです.

    コールバック関数


    コールバック関数コールバック関数:関数に渡される引数、必要に応じて後で引数に渡される関数を呼び出します.
    function def(question, yes, no){
        if (confirm(question)) yes()
        else no();
    }
    
    def(
        "ask?",
        function() {alert("yes");},
        function() {alert("no");},
    );

    矢印関数

    let sum = (a,b) => a+b;
    let hi = () => alert('hi');
    
    let minus = (a,b) => {
        let result = a -b;
        return result; // 중괄호 사용하면 return으로 반환해주어야함
    }

    配列の宣言

    let arr = new Array();
    let arr = [];

    配列に値を挿入

    let job = [];
    job[0] = "A";
    job[1] = "B";
    job[2] = "C";
    
    let job = ["A", "B", "C"];
    
    job.length // 3
    
    job.push("D")

    object

    let a = 1
    let bag = {
      "a" : 1,
      "b" : 2,
      "c" : 3,
      [a] : 11
    }
    
    bag[a] // 11
    bag['a'] // 1
    bag.c // 3
    
    bag.d = 5
    
    bag['d'] // 5

    for in

    a = [1,2,3,4,5,6,7,8,9,10]
    
    for (let i in a){
      console.log(+i) // 1~10 숫자형으로 출력
    }
    
    for(var key in bag){
        console.log(key); // key 출력
    }
    
    for(var key in bag){
        console.log(bag[key]); // value 출력
    }

    オブジェクト向けプログラム


    OOP (Object Oriented Programming)
    var f = function(){
        console.log("hi");
    }
    
    var a = [f];
    
    a[0]() // hi
    
    f(); // hi
    
    var o = {
      func:f
    };
    
    o.func(); // hi
    o['func'](); // hi
    ifまたはwhile繰返し文は値にできません.
    関数は主にオブジェクトに含まれます.
    私はあなたに名前をつけることができますから.
    var o = {
        v1: 'v1',
        v2: 'v2',
        f1: function (){
        console.log(o.v1);
        },
        f2: function (){
        console.log(o.v2);
        }
    }
    
    o.f1() // v1
    oが他の名前に変更された場合、関数ではオブジェクトの名前を変更する必要があります.
    これを使用
    var o = {
        v1: 'v1',
        v2: 'v2',
        f1: function (){
        console.log(this.v1);
        },
        f2: function (){
        console.log(this.v2);
        }
    }
    
    o.f1() // v1
    let user1 = {name : '장진욱'};
    let user2 = {name : '진욱장'};
    
    function s(){
        console.log(this.name)
    }
    
    user1.f = s;
    user2.f = s;
    
    user1.f(); // 장진욱
    user2.f(); // 진욱장

    表計算ドキュメント演算子

    const arr1 = [1,2]
    const arr2 = [3,4,5]
    const arr3 = [...arr1, ...arr2] // [1,2,3,4,5] ... 괄호를 없앤다고 생각.
    
    
    function abc(a, ...b){ // 인자를 가변적으로 받을때 유용
        console.log(b);
    }
    
    abc('hi', 'hello', 1, 2, 3, 4 ,"a") // [ 'hello', 1, 2, 3, 4, 'a' ]