
😶🌫️먼저 사담으로 몇마디 적고 시작하겠다.
사실 진작 회고록을 작성해야했는데 미룸의 달콤한 유혹에 빠져 하지 못하고 있었다.
(물론 어디에서 시작해야할지 정말 진지하게 고민해서 늦춰진것도 있지ㅁ...ㅏ..ㄴ)
그래서 먼저 했지만 적지 못한 회고록은 빠른 시일내에 올릴 예정이다.
var, let, const=키워드 좌측에는 대입 할 변수를, 키워드 우측에는 대입 할 값을 작성
💡 += -= variable++ variable-- 와 같은 구문 설탕도 있다고 합니다.아... 궁금하다... 요리할때 설탕넣는 것처럼 그런 조미료 역할을 말하는 건가...?
syntactic sugar
• 문법적 설탕, 구문적 설탕, 구문 설탕, 신택틱 슈거
• 사람이 이해하기 쉽고 표현하기 쉽게 컴퓨터 언어를 디자인해 놓은 문맥
• 사람이 사용하기 달콤하다는 것에 유래가 되었고 깔끔하고 명확하게 표현가능하다는 특징이 있다.
• 주로... 내부적인 동작은 기존과 동일하지만, 어떤 구현 방식에 맞추어 새로운 문법을 제공하는 경우를 가리킨다.
get_array(Array, vector(i, j)) → Array[i,j]
set_array(Array, vector(i,j), value) → Array[i,j] = value
내가 이해한 바로는
구문설탕 = 조미료
같은 느낌..?
어쨌든 다시 돌아와서 다음걸 봐보자
===
!==
! 가 값을 부정하는 Not의 의미로서 사용됩니다.> , <
> 는 좌측에 위치한 값이 더 클 때에만 true로 평가되며, 양쪽의 값이 같거나 우측에 위치한 값이 더 큰 경우 false로 평가됩니다.< 는 반대로 우측에 위치한 값이 더 클 때에만 true로 평가되며, 양쪽의 값이 같거나 좌측에 위치한 값이 더 큰 경우 false로 평가됩니다.>= , <=
= 기호가 붙어 양 쪽의 값이 같은 경우에 true로 평가된다는 점이 위와 다릅니다.>= 는 좌측에 위치한 값이 더 크거나 우측에 위치한 값과 같을 때에만 true로 평가되며, 우측에 위치한 값이 더 큰 경우 false로 평가됩니다.<= 는 우측에 위치한 값이 더 크거나 좌측에 위치한 값과 같을 때에만 true로 평가되며, 좌측에 위치한 값이 더 큰 경우 false로 평가됩니다.== , !=
==는 === 와 같은 기능을 하는 연산자이나, 사용하지 않는것을 권장합니다.!=는 !== 와 같은 기능을 하는 연산자이나, 사용하지 않는것을 권장합니다.'10' == 10 의 결과가 true 로 평가됩니다.'10' === '10' 처럼 동작한다고 이해하면 됩니다.== != 두가지 모두 위와 같은 동작을 포함하며, 버그를 유발하기 쉬운 문법이므로 === !== 를 사용하도록 버릇들이는게 좋습니다!!
자... 예시로 파이썬에서는 == 로 썼는데 이제는 === 로 쓰는걸 습관화 해야할거 같다.
🍗 다시 하나하나 뜯어봅시다 ! 🍗
1) Boolean(불리언)
true(참) 혹은 false(거짓) 값으로만 표현할 수 있습니다.2) String (문자열)
'값' 또는 "값" 와 같이 외따옴표, 쌍따옴표나 외따옴표를 쌍으로 값을 묶어 표현합니다.3) Number (숫자)
10 처럼 어떠한 따옴표나 콤마 등을 넣지 않고 숫자 값으로 표현합니다.10 !== '10' 두 값은 다른 자료형을 가지고 있기 때문에 같다고 볼 수 없습니다.4) undefined
undefined 값을 가집니다.5) null
6) Object (객체)
{ key1: value, key2: value } 의 형태로 표현하며, value에는 모든 자료형의 값을 담을 수 있습니다.Object입니다.obj.key
obj['key']
const person = {
name: '강승현',
age: 52
};
person.name;
// Print: '강승현'
person['name'];
// Print: '강승현'
person.hobby;
// Print: undefined
obj['key'] 와 같은 표현식을 사용해야 합니다.const person = {
name: '강승현',
age: 52,
'raising dog': '푸들',
} 여백(스페이스), 대쉬(-) 등 허용되지 않은 문자열이 포함된 경우 변수를 만들 수 없는것처럼 object의 키로 사용하기 위해서는 따옴표로 감싸야 합니다. person.'raising dog'는 참조가 불가능하지만, person['raising dog']로 하는 경우 참조가 가능합니다.7) Array(배열)
[value, value2, value3] 의 형태로 표현하며, value에는 모든 자료형의 값을 담을 수 있습니다.Array입니다.비유하자면 책의 목차(Index)에 있는 페이지 수와 같으며, 목차를 보고 해당 페이지를 펼치면 원하는 내용(value)을 볼 수 있는것과 같습니다.
Index의 최소 값은 0입니다.
const names = ['강승현', '홍길동', '김아무개'];
names[0];
// Print: '강승현'
names[2];
// Print: '김아무개'
names[3];
// Print: undefined
Number.isNaN() 또는 isNaN()을 이용하면 제일 분명하게 판별할 수 있습니다.9)Function (함수)
함수는 기능의 단위를 묶거나 반복되는 코드를 줄이기 위해 사용됩니다.
getMyName이 함수의 이름이 됩니다.function getMyName() {
return '함수가 반환할 값';
}
getMyName(); // 위처럼 정의된 함수는 이렇게 사용할 수 있습니다.
// Print: '함수가 반환할 값'const variable = function() {
return '함수가 반환할 값';
}
variable(); // 위처럼 정의된 함수는 이렇게 사용할 수 있습니다.
// Print: '함수가 반환할 값'function getMyName(myName) {
return myName;
}
getMyName('인자를 넣습니다.'); // 위처럼 정의된 함수는 이렇게 사용할 수 있습니다.
// Print: '인자를 넣습니다.'
우선 당장에 기억나는건 f ' ' , function 정도..? ㅋㅋㅋㅋㅋ...
원래 쌓아갈때 재미있는거라고 했다. 😮💨
[Truthy] 한 값은 true로 평가되며, [Falsy] 한 값은 false로 평가되는 연산 방식입니다.Falsy 값에는 빈 문자열 '', 숫자 0, 불리언 false, null, undefined, NaN가 해당됩니다.Falsy 값이 아닌 모든 값은 Truthy 값으로 연산되며 결국 true로 평가된다고 이해할 수 있습니다.Truthy 로 판단되는 자료형이 있습니다. (중요!!)Boolean 함수를 사용할 수 있습니다.Boolean('String') → trueBoolean('') → falseBoolean(undefined) → false내가 현재까지 이해한 수준은 불리언 = 참, 거짓 평가해주는거
공식문서를 찾아보았다.
Truthy : falsy로 정의되지 않는한 모든 값은 참
false, 0, -0, 0n, "", null, undefined,NaN 를 제외한 모든 값이 참
Falsy : 불리언에서 만났을 때 거짓으로 간주 되는 값
조건문은 조건이 충족할때만 특정 구문을 실행하기를 원할 때 사용합니다.
논리적인 로직을 표현할 때 가장 중심이 되는 구문이며, 프로그래밍의 꽃이라고 해도 과언이 아닙니다.
조건에 들어가는 값은 항상 불리언 연산이 적용됩니다.
if ... else 문
if (condition1) // 명령문1
else // 명령문2
if (condition1) {
// 명령문1
} else {
// 명령문2
}
if (condition1) {
// 명령문1
} else {
if (condition2) {
// 명령문2
} else {
if (condition3) {
// 명령문3
} else {
// 명령문4
}
}
}
여기에서 조건에 대해 여러 명령문을 묶어서 실행하기 위해서는 반드시 (block {})으로 묶어야 한다고 한다.
(block {}) 은 항상 사용해도 문제가 없다고 하네요 !

다음에는 과제가 있어 과제 포스팅을 해보기로 합시다 !!
