JavaScript (1)

so2·2021년 2월 3일
0
post-thumbnail
post-custom-banner

기본 문법

  • defer 속성 : 페이지가 모두 로드된 후 스크립트 실행
<script src="~~" defer>
  • 문장(statement) : js 코드 실행 단위

  • 변수 : 값을 저장하는 영역 , 저장된 값을 재사용
    의미를 부여해서 변수 이름 작성해야함 = 시멘틱(sementic)

var book = "책", point = 123; // 한문장에서 다수의 변수 선언 가능 
var book = "책", 
point = 123;  // 다음 문장에 선언 가능 
  • 주석
/** 코드 */
// 코드 
  • console.log() : 브라우저 콘솔 창에 값 출력

  • js는 정수,실수 구분하지 않음

  • 상수 : 변경할 수 없는 값 영문 대문자 사용

var ONE = 1; // 값은 바꿀 수 있지만 상수로 사용한다는 시맨틱 선언
  • 데이터 타입 : 자료형, 데이터는 타입을 가짐
종류 : Undefined, Null, Boolean, String, Number, Object 
형태 : var value = 123; // 숫자 
      var value = "sports" // 문자 
  • typeof 연산자 : 데이터(값) 타입 반환
console.log(typeof point) 
  • 키워드 : 특별한 기능을 가진 단어
  • Number 타입 : 부호를 가진 값
Number  타입의 특수한 값 
   NaN : Not-a-Number
   Infinity : 양수 무한대
  -Infinity : 음수 무한대 
  • String 타입
' 책,  "123" ' or " 책, '123' "  // ' "" ' or " '' "
"123" 
  • Undefined 타입 : 변수에 값을 할당하지 않은 것
값 : undefined 
  • Null 타입 : 비어있는 값 할당
값 : null
undefined 과 null 차이 : undefined는 단순히 변수만 선언 
null은 의도적으로 null 값을 할당한 것 
  • Boolean 타입
값 : true, false  
  • Object 타입 : {name : value} 형태
    프로퍼티 : name과 value 하나를 지칭
    Object 는 0개 이상의 프로퍼티 집합

  • Primitive 타입 : js 기본 데이터 타입


연산자

  • == 연산자 : 왼쪽과 오른쪽 값이 같으면 true,
    다르면 false 타입은 비교하지 않음 1과 "1"이 같음

  • === 연산자 : 왼쪽과 오른쪽의 값과 타입이 모두 같으면 true,
    값 또는 타입이 다르면 false

  • !== : 값과 타입이 모두 다르면 true, 아니면 false!

val value; 
console.log(value == null);
console.log(value === null);
		
✍🏻 결과  
true // 둘 다 값이기 때문에 
false // 타입이 다르기 때문에
  • || 연산자 : 평가 결과가 하나라도 true면 ture, 아니면 false
    왼쪽 결과가 true면 오른쪽과 비교하지 않음
var value, zero = 0, two = 2;
console.log(value || zero || two)
			
✍🏻 결과 
2 // value : undefined, zero : false , two : true
     true가 아니라 true가 되는 변숫값을 반환 
     2가 true이므로 전체 비교는 true 
     
var value, zero = 0 
console.log(value || zero)
			
✍🏻 결과  
undefined  // 마지막까지 비교하였는데 모두가 false면
	      마지막 변숫값 반환
  • && 연산자 : 표현식이 모두 true면 true,아니면 false
    왼쪽 결과가 false 면 오른쪽은 비교하지 않음
var one= 1, two=2;
console.log(one && two)
			
✍🏻 결과  
2  // 모두가 true면 마지막의 2를 반환
var one=1, zero = 0;
console.log(one && zero && nine)
			   
✍🏻 결과 
0  // 1. one 변수 값이 1이므로 true. true 이므로 오른쪽 비교
      2. zero 변수 값이 0이므로 false false이므로
         오른쪽을 비교하지 않고 zero 변수 값인 0 반환
      3. nine을 비교하면 nine 변수가 없으므로 에러 발생
       하지만, zero에서 false가 나왔으므로 비교하지 않음
  • 유니코드 : 세계의 모든 문자를 통합하여 코드화

  • 코드 포인트 : 문자열을 대표하는 정수값
    문자열에 할당된 코드 값 (1문자 1코드)

  • UTF : 유니코드의 코드 포인트를 매핑하는 방법


문장

  • debugger : debugger 위치에서 실행 멈춤
    브라우저의 개발자 도구 창이 열려 있을 때만 멈춤
    열려 있지 않으면 멈추지 않음

  • throw : 명시적으로 예외 발생시킴

try {
	throw "예외 발생시킴";
	var sports = "스포츠";
}catch(error){
	console.log(error);
	console.log(sports);
}
			
✍🏻 결과 
예외 발생시킴
undefined // "스포츠"가 할당되지 않았기 때문 
try {
	throw{
		 msg : '예외 발생시킴',
		 bigo : '임의의 이름 사용'
	     };
} catch(error){
		 console.log(error.msg);
		 console.log(error.bigo);
};
		
		
✍🏻 결과  
예외 발생시킴
임의의 이름 사용 
		
try {
	throw new Error ("예외 발생시킴");
} catch(error){
	console.log(error.message);
};
		
✍🏻 결과
예외 발생 시킴
  • strict 모드 : 엄격하게 JS문법 사용의 선언
    작성한 위치부터 적용
    필수로 사용하는 것이 좋음
    형태 : "use strict"

"use strict"

try{
	book = "변수 선언하지 않음"
	console.log(book);
} catch (error) {
	console.log(error.message);
}
			
✍🏻 결과
book is not defined // use strict 사용 안하면 
		       변수 선언하지 않음 출력
post-custom-banner

0개의 댓글