본문 바로가기

study

혼공 JS 1주차

 

■ 정리

  • "", ''은 문자열을 구성하는데, 혼합해서 사용하면 좋다. 
    • "나는 '혼공족'"  // 겉에는 "" 으로 구성 안에는 ' '으로 구성
    • '나는 "혼공족"'  // 이것은 반대로 구성한 케이스
  • 특수문자는 \ (이스케이프 사용)
  • 문자 선택 연산자 : 이런 구문이 있네요

  • 자료형 검사 : typeof
    • 체크할때 이런 형태로 사용 가능
if (typeof a == "undefined") document.writeln("a가 존재하지 않음.")
  • 체크할때 이런 형태로 사용 가능
    • 총 8가지 타입으로 return한다
    • string, number, boolean, undefined, function, object, symbol, bigint

  • 템플릿 문자열
    • ` (빽틱)을 이용해서 문자열 내부에 표현식을 삽입할때 사용함
    • 예전에는 IE에서는 사용 불가 (지원 스팩 아님)
    • `` 안에서 ${....} 형태로 구성하면 됩니다.
    • `` 안에서의 공백은 그래로 공백 문자로 인식합니다.
const tmp = `안에 문자열을 넣어보죠 \n100 + 300 + 3의 결과는 = ${100 + 300 + 3} 입니다.`
/* result
안에 문자열을 넣어보죠
100 + 300 + 3의 결과는 = 403 입니다.
* */

 

  • 변수에 대해서 처리가 가능한지 확인해보죠
const tmp1 = "치킨";
const tmp2 = "짜장면";
const tmp3 = 2;
const tmp4 = 3;

const tmp = `오늘 저녁식사는 ${tmp1 + tmp3 + "마리"}와 \n${tmp2 + " " + tmp4 + "그릇"}을 먹을거에요`;
console.log(tmp)

/* 결과
오늘 저녁식사는 치킨2마리와 
짜장면 3그릇을 먹을거에요
*/

 

  • === 와 == 차이점, !==와 != 차이점 
    • === 은 "값과 자료형까지 비교" 하고
    • == 은 "값"만 비교한다.
console.log(1 == "1")   // true (형변환이 이루어진다)
console.log(1 === "1")  // false
console.log("---------------")
console.log(false == "0")   // true, "0"이 형변환 되어서 0
console.log(false === "0")  // false
console.log("---------------")
console.log("" == [])       // true, 빈문자열은 false, 배열[]은 false
console.log("" === [])      // false
console.log("---------------")
console.log( 0 == [])       // true, 0은 false, 배열[]은 false
console.log( 0 === [])      // false

 

  • 오류 케이스 (익숙해지면 좋음)
  • Uncaught syntaxError : Unexpected identifier // 구문오류
    • 해당 문자열을 ('This is ') ( '' )으로 2개로 구성되어서 String이라는 것은 식별을 못하는 구문오류가 발생

 

 

  • 상수와 변수
    • var를 이용해서 구분없이 사용하였지만, 요즘은 명확히 const, let을 이용합니다. 
    • 상수는 변경이 불가능한 값 : const
    • 변수는 변경이 가능한 값 : let
    • 상수를 선언시에는 반드시 값을 할당해야 합니다.
// 변화가 안되는 상수에 값을 할당하면 오류가 발생합니다.
const a = 3.14
a = 111;
// TypeError: Assignment to constant variable. 오류 발생

 

// let, const모두 같은 변수값을 할당하면 오류가 발생합니다.
let a = 3.14
let a = 111;
// SyntaxError: Identifier 'a' has already been declared


// var일때는 같은 변수명으로 할당을 해도 오류가 발생하지 않습니다.
// 그래서 오류를 더 찾기 힘들게 됩니다.
var b = 3.14
var b = 111;

console.log(b)

 

  • undefined 자료형
    • 이것도 자료형이다.!!
    • 변수만 선언하고, 값이 할당 안되어 있으면, 이것은 undefined자료형입니다.
  • 숫자 자료형 변환하기 : Number(자료)
    • NaN (Not a Number) : 숫자로 변환할수 없는 문자열
let tmp1 = Number("홍길동");   // NaN
let tmp2 = Number("123");   // 123, number 타입
let tmp3 = "123";   // string 타입


console.log(typeof Number("10"*1))  // 문자열*숫자를 통한 형변환으로 숫자형으로 결과 나옴, number타입
console.log(typeof Number("100"*true)) // number타입, true가 1의 역활

 

  • 문자열 자료형으로 변환하기 : String(자료)
    • 다른 방식 : 위에서 숫자는 *, + 등 사칙연산을 이용했는데, 여기서는 + 를 통해서 문자열로 형변환이 가능하다
console.log(typeof String("1111222"))   // string 타입
console.log(typeof (123 + ""))  // string 타입

 

 

■ 기본미션

. p. 54의 <파일 만들고 저장해 실행하기>에서 'Hello World' 출력하기

 

 

■ 선택미션

Ch.01(01-1) 확인 문제 1번 상세하게 적고 인증하기

. naver : 네이버쇼핑등에서 다양한 정보가 인증되고, 네이버 페이등 다양한 금융플래폼으로 진화

. google : 그 수많은 데이터를 어떻게 처리할까?

. facebook : 비동기 액션

.트렐로 : 일정관리 편하게 하는게 인기가 많죠 

. 뉴욕타임즈 : 가시적인 화면 구성

 

'study' 카테고리의 다른 글

혼공 JS 3주차  (0) 2023.07.04
혼공 JS 2주차  (0) 2023.07.04
혼공 분석 6주차  (0) 2022.12.28
혼공 분석 5주차  (0) 2022.12.28
혼공 분석 4주차  (0) 2022.12.28