JavaScript 정리 02

지현·2022년 5월 19일
0

Javascript / TypeScript

목록 보기
1/16
post-thumbnail

데이터

  • 참조형 데이터의 경우 값의 주소를 받는 것이기 때문에 변수의 값이 같이 바뀌고,
  • 원시형 데이터는 값 자체를 받는 것이기 때문에 값을 바꿔도 그 전에 받았던 변수의 값은 바뀌지 않는다 원시형 데이터는 숫자, 문자 등
let a = 1;
let b = 2;
let c = {
    name: 'lee',
    age: 25,
    adderess: 'busan',
    tel: '01037371237'
};

에서 let d = a;을 하고
console.log(d)를 하면 1이 나온다. a = 1 이라는 원시데이터를 받음
그 후에
a = 10 이라고 재선언하고
console.log(a) console.log(d) 하면
log(a)는 10이 나오지만 (d)는 그대로 1을 받음.
1이라는 값 자체를 받은 것이기 때문에 a 값이 바뀌었어도 d의 값은 바뀌지 않는다.


반면 참조데이터는
값의 주소를 참조하여 데이터가 나오는 것이므로 let e = c;를 하고나서 c의 값이 바뀌면 console.log(e)를 했을 때 바뀐 값이 출력된다.

연산자

산술연산자 (피연산자가 숫자인 연산자)

+ 더하기
- 빼기
* 곱하기
/ 나누기
% 나머지

단항연산자

++ 증가연산자
++a a에 1을 더한 다음 a의 값을 평가
a— a를 평가한 다음 a에 1을 더한다

-- 감소연산자
--a a에서 1을 뺀 다음 a값을 평가한다
a— a를 평가한 다음 a에서 1을 뺀다

+ 아무것도 처리하지 않음

- 부호 반전

let num3 = 10;
console.log(++num3);//11
console.log(++num3);//12
console.log(--num3);//11
console.log(num3++);//11 <<평가하고 1 증가시킴
console.log(num3++);//12 <<평가하고 1 증가시킴
console.log(num3);//13 << 1증가됨

산술대입연산자

+= -= *= /= %= 은 산술대입 연산자 =붙이는거

let value1 = 1;
value1 *= 10 
console.log(value1) // 10
value1 *= 10 
console.log(value1) //100

논리연산자와 관계연산자

관계연산자

  • == 동일연산자 (값이 같으면 true 다르면 false)

  • === 값과 타입이 둘 다 같으면 true 그 외에는 false

    (자바스크립트는 10과 ‘10’을 알아서 같다고 처리해줌. ‘10’도 숫자라는걸 아는겨 ; 암묵적 형변환)

  • != 값이 다름 , 값이 다르면 true 같으면 false

  • !== 값과 타입이 다름 : a와b의 값과 타입이 다르면 true 그 외 false

논리연산자

  • && and 둘 다 참이어야만 true 둘 중 하나라도 거짓이면 false
  • || or 둘 중 하나라도 참이면 true 둘 다 거짓이면 false
  • ! 부정 !a 일 때 a가 true면 false, false 면 true

let v1 = 10, v2 = 20, v3 = 30, v4 = 40, result; 일 때
result = v1>v2 ; // 10>20 false
result = !(v1>v2) ; // 10>20 false 의 부정이기 때문에 true
result = v1>v2 && v2<=v3
// 둘 다 참이어야 true 출력, v1>v2가 거짓이므로 false  
result = v1>v2 || v2<=v3
// 둘 중 하나 참이라면 true 출력, v2<=v3 이 참이므로 true

삼항연산자 , 조건부연산자

result = v1 > v2 ? 'A' : 'B' ; // v1 > v2 조건이 만족하면(참이면) A 출력, 거짓이면 B 출력
console.log(result) // 거짓이므로 B 출력

연산자 우선순위는 () 쳐서 명시해야 해

문자열 연결

제어문

조건문 if / else 문
if (조건식) 문장
if (조건식) 문장1 else {문장2}

if()문장  << 한줄이면 걍 이렇게 써도 ㄱㅊ
    if() {
        문장               << 여러줄일때는 블록으로 묶기
    }
let userId = 'kjh0421'
┌ 조건
if(userId =='kjh0421'){
    console.log(userId+'방문해주셔서 감사합니다~!~!★☆') 연결연산자
    console.log(`${userId}방문해주셔서 감사합니다~!~!★☆`) 벡틱
}
if(userId =='kjh0422'){
    console.log(userId+'방문해주셔서 감사합니다~!~!★☆')
    console.log(`${userId}방문해주셔서 감사합니다~!~!★☆`)
} else {
    console.log('저리가세요')  
}

조건 맞으면 감사합니다 나옴. 안맞으면 저리가세요 나옴.
else 는 조건이 안맞을 때 실행될 코드 넣어주기

0개의 댓글