8_JavaScript


今日やったこと
  • JavaScriptの学習

  • 1.スクリプト宣言の場所の違い

    1) head 
    	- 페이지를 로딩하는 시간이 길어진다.
    
    2) body 하단
    	- 페이지가 뜨더라도 동적인 요소를 사용하기 위해서는 기다려야 한다.
    
    3) async 
    	- 병렬로 다운로드하되 파싱 도중에 동적인 요소를 실행하게 되면 페이지를 로딩하는 시간이 길어진다.
    
    4) defer 
    	- 병렬로 다운로드하되 파싱이 끝난 후에 동적인 요소를 실행한다.

    2. 'use strict';


    スクリプトファイルの上部にある「use strict」.宣言すると、宣言されていない変数に値を割り当てるときにエラーが発生します.そのため、未然に防ぐことができます.
    'use strict';
     a = 6; // 결과값: error (a is not defined)
    
    let a;
    a = 6; // 결과값: 6

    3.バニラjavascript


    ブラウザで提供されるjavascriptとは、ライブラリやフレームワークがない日のjavascriptを指します.

    4.変数


    グローバル変数は最小値として定義され、必要に応じてのみ使用されます.
    1)可変(特徴:可変、rw**)
  • var:再割り当て、再宣言、昇格可能、無条件グローバル変数処理
  • console.log(price); // 결과값: undefined
    	-  hoisting** 가능
    
    {
    var price = 350;
    }
    console.log(price); // 결과값: 350
    
    var price = 70;
    console.log(price); // 결과값: 70
    	- redeclaration(재선언)
    ** rw: read and write
    **昇格:変数を宣言する場所に関係なく、宣言を最上位に昇格させます.言い換えれば、後で宣言しても使えます.
  • let:
  • のみ再割り当て可能
    console.log(weight); // 결과값: error
    	- hoisting 불가
    
    let weight = 350; 
    console.log(weight); // 결과값: 350
    
    let weight = 300;
    console.log(weight); // 결과값: error
    	- redeclaration(재선언) 불가
    
    weight = 500;
    console.log(weight); // 결과값: 500 
    	- reassignment(재할당) 가능
    
    weight++; // 결과값: 501 
    2)Constant(特徴:不変,r)
  • const:再割り当て不可、再宣言不可
  • const height = 350;
    console.log(height); // 결과값: 350
    
    const height = 70;
    console.log(height); // 결과값: error
    
    height = 500;
    console.log(height); // 결과값: error
    
    height++;
    console.log(height); // 결과값: error	
    ただし、パラメータ(パラメータ)は変更できます
    const a = function(b,c){
    	      let d = b + c;
    	      return d;
    }
    console.log(a(3,6)); //결과값: 9
    console.log(a(5,7)); //결과값: 12

    6.数値を0で割った場合はinfinity値、数値以外の場合はNaN(Nota Number)を返します。


    7. Template liters


    引用符ではなく逆チェック(`)を使用します.
  • 形式:`${}`
  • let myNmae = 'Gildong'
    let myCity = 'Seoul'
    console.log(`Name is ${myName}, City: ${myCity}`); // 결과값: Name is Gildong, City: Seoul

    8.nullとundefinedの違い

  • null:値宣言が空の
  • 未定義:宣言のみの
  • let a = ''
    console.log(a) // 결과값: null
    let b
    console.log(b) // 결과값: undefined

    9. Dynamic Typing

    let text = 'hello';
    console.log(text.charAt(0)); // 결과값: h
    console.log(`value - ${text}, type - ${typeof text}`); // 결과값: value - hello, type - string
    
    text = 1;
    console.log(`value - ${text}, type - ${typeof text}`); // 결과값: value - 1, type - number
    
    text = '7' + 5;
    console.log(`value - ${text}, type - ${typeof text}`); // 결과값: value - 75, type - string
    
    text = '8' / '2'
    console.log(`value - ${text}, type - ${typeof text}`); // 결과값: value - 4, type: number
  • エラーの可能性のある入力値はエラーに戻らないため、問題(予期せぬコードの動作)が発生する可能性があります.
  • を補完するために、タイプスクリプトが作成されました.