์ฝ๋๊ฐ ์ผํ์ฑ or ์งง์
<script src=".js"></script>
์ฝ๋๊ฐ ๊ธธ์ด์ง ๋ or ์ฌ์ฌ์ฉ
body ๋งจ๋์ ์ฃผ๋ก
cf. ์ฃผ์
ํ ์ค //
๋ ์ค ์ด์ /* */
ํน์ ๊ฐ์ ๋ด๋ ๊ณต๊ฐ
ํค์๋ ๋ณ์์ด๋ฆ = ๊ฐ
ex.
const name = "une"
์ ์ธ๊ณผ ํ ๋น ๋์์
let name;
๋ณ์ ์ ์ธ
name = value;
ํ ๋น
ex.
var name;
'name'์ด๋ผ๋ ๋ณ์ ์ ์ธ
์ ์ธ๋ง ํ๋ฉด ๊ฐ์ด ์์ผ๋ฏ๋ก undefined ์ํ
name="une 1";
name="une 2";
'une 1'์ ์ฌํ ๋นํ๊ณ , ๋ค์ 'une 2'๋ก ์ฌํ ๋น.
var์ ์ฌ์ ์ธ์ด ๊ฐ๋ฅํด์ ์ค๋ฅ ๋ฐ์ํ ๊ฐ๋ฅ์ฑ์ด ๋๊ธฐ ๋๋ฌธ์ ์ง์ํ๋ ์ถ์ธ.
js๋ ์ฝํ ํ์ ์ธ์ด: ๋ณ์ ์์ ์ด๋ค ์๋ฃํ์ด๋ ๋ค์ด๊ฐ ์ ์๋ค.
cf. ๊ฐํ ํ์ ์ธ์ด: ๋ณ์ ์์ ์ด๋ค ์๋ฃํ์ด ๋ค์ด๊ฐ์ง๋ ์ ์ธ.
ex. int age = 33;
(JAVA, C, C++, ...)
string
, number
, boolean(T/F)
, null
, undefined
cf. null vs undefined
null :
๊ฐ์ ์๋์ ์ผ๋ก ๋น์๋ ๋ ์ฌ์ฉํ๋ค. typeof๋ก ์๋ฃํ์ ํ์ธํ๋ฉด object๋ก ์ธ์. ๊ทธ๋์ ์๋ฐํ ๋งํ์๋ฉด ๊ธฐ๋ณธ์๋ฃํ๋ณด๋ค๋ ๊ฐ์ฒด, ์ฐธ์กฐ ์๋ฃํ์ด ๋ ์ด์ธ๋ฆฐ๋ค๊ณ ํ ์ ์๋ค.
undefined :
ES์์ ๋ณ์๋ '์ ์ธ'ํ๋ค, ํจ์๋ '์ ์'ํ๋ค๊ณ ํํํ๋ค. ํ์ง๋ง undefined์ '์ ์๋์ง ์์'์ ๋ณ์๊ฐ ์ ์ธ๋์์ง๋ง ๋ณ์ ๊ฐ์ ํ ๋นํ์ง ์์ ์ํ๋ฅผ ๋งํ๋ค. typeof๋ก ์๋ฃํ์ ํ์ธํ๋ฉด undefined๋ฅผ ๋ฐํํ๋ค.
true or false in boolean aren't "string"
. It has a value itself.
์ฌ๋ฟ ๋ถ๋ฅด๊ธฐ
"string" + variable-name
"string", variable-name
variable-name + variable-name
`string ${variable-name}
`
ex.
let cat = {
//key: value ๊ตฌ์ฑ
name: "๋๋น",
age: 80,
mew: function() {} //๋ฉ์๋
}
๋น์ทํ ํน์ง์ ๊ฐ์ง ๊ฐ๋ค์ ํ๋์ ๋ณ์์ ๋ด์ ๋.
fruits[0]
์ ํ๋ฒํธ๋ถ์ฒ๋ผ key:value ํํ๋ก ์ ์ฅํ๋ค. ๋ฐฐ์ด(=๋ฆฌ์คํธ)์์๋ ์ํ๋ ๊ฐ์ ์ฐพ์ ๋ ์ธ๋ฑ์ฑ์ผ๋ก ๊ฒ์ํด์ผ ํ์ง๋ง, ๋์
๋๋ฆฌ๋ key๊ฐ์ผ๋ก ์ฝ๊ฒ ์ฐพ์ ์ ์๋ค.
ex.
let basketBall {
player: 5,
isFun: true,
onePoint: "์์ ํฌ",
cheering: function () {
console.log("ํ๋๋ง ๋!");
} //๊ฐ์ฒด ์์ ์๋ function์ ๋ฉ์๋!
}
์๋ฐ์คํฌ๋ฆฝํธ๊ฐ ์ค์ค๋ก ํํ๋ฅผ ๋ณํ
ex. prompt ์ฌ์ฉ ์ string ์ทจ๊ธ
๋ฌธ์์ด๋ก
String()
toString()
์ ์๋ก
Number()
ParseInt()
==
: ๊ฐ๋ง ๋น๊ต
===
: ์๋ฃํ๊น์ง ๋น๊ต
๋ง์ฐฌ๊ฐ์ง๋ก
!=
: ๊ฐ๋ง ๋น๊ต
!==
: ์๋ฃํ๊น์ง ๋น๊ต
ex.
80 === "80" //false
80 != "80" //false
๊ทธ์ธ >=
, >
, <=
, <
์กด์ฌ
cf. null check
์ฝ๋๋ฅผ ์งค๋ ๊ฐ์ด null์ธ์ง ํ์ธํด์ผ ํ ๋๊ฐ ์๋ค. null๊ณผ undefined๋ ์๋ก๋ฅผ ==
์ฐ์ฐ์๋ก ๋น๊ตํ ๋๋ง true๋ฅผ ๋ฐํํ๊ธฐ ๋๋ฌธ์ ์ด๋ฅผ ํ์ฉํด ์์๋ณผ ์ ์๋ค.
ex.
//1
null == undefined //true
//2
null == 1 //false
undefined == "1" //false
์ฒซ๋ฒ์งธ ์ํฉ ์ธ์ null์ด๋ undefined๋ฅผ ํผ์ฐ์ฐ์๋ก ๋น๊ตํ๋ฉด ์ธ์ ๋ false๊ฐ์ ๋ฐํํ๋ค.
๊ธฐ๋ณธ ์ฌ์น์ฐ์ฐ +
, -
, /
, *
%
: ๋๋จธ์ง ๊ตฌํ๊ธฐ
ex.
console.log(5 % 2 == 1) // true
**
: n์ m์น
ex.
2**3 = 8
&&
and
||
or
!
not
ex.
!true
=> false
for๋ฌธ์์ ์์ฃผ ์ฐ์ธ๋ค.
let num = 6;
console.log(num++)
// ์ฝ๋ ์ฒ๋ฆฌ ํ ์ฆ๊ฐํ๊ธฐ ๋๋ฌธ์ '์ ์์ฐ์ฐ์'๋ผ๊ณ ๋ถ๋ฅธ๋ค.
console.log(++num)
// ์ฆ๊ฐ ํ ์ฝ๋ ์ฒ๋ฆฌํ๊ธฐ ๋๋ฌธ์ 'ํ์์ฐ์ฐ์'๋ผ๊ณ ๋ถ๋ฅธ๋ค.
cf. ์ฐ์ฐ์ ์ค์ด๊ธฐ
num = num + 1; <=> num +=1; num = num - 1; <=> num -=1;
๊ฐ์ ๋ฐฉ์์ผ๋ก
*=
(๊ณฑํ๊ธฐ),/=
(๋๋๊ธฐ)
ํจ์๋ ์ ์ธ๋ฌธ๊ณผ ํธ์ถ๋ก ์ด๋ฃจ์ด์ง๋ค. ํจ์์์ ๋์จ ๊ฐ์ ๋ณ์์ ์ ์ฅํ์ฌ ํ์ฉ.
()
: ํจ์ ์ธ๋ถ์์ ํจ์ ๋ด๋ถ๋ก ๊ฐ ์ ๋ฌreturn
: ํจ์ ๋ด๋ถ์์ ํจ์ ์ธ๋ถ๋ก ๊ฐ ์ ๋ฌfunction funcName (//๋งค๊ฐ๋ณ์) {
// ๊ธฐ๋ฅ
}
funcName(); // ํจ์ ํธ์ถ
๋ช ์์ ํจ์๋ ํธ์ถ ๋จผ์ ํ๊ณ ํ์ ์ ์ธํด๋ ๊ธฐ๋ฅํ๋ค. ์ด๋ ์๋ฐ์คํฌ๋ฆฝํธ์ ํธ์ด์คํ (ํจ์ ์ ์ธ์ด ํธ์ถ๋ณด๋ค ๋จผ์ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ๋๋ ํ์) ๋๋ถ์ top-bottom์ ์์๋ฅผ ์ ๊ฒฝ ์ฐ์ง ์๊ณ ์์ฑํด๋ ๊ด์ฐฎ๋ค.
let sum = function () => {
}
let sum = function (//๋งค๊ฐ๋ณ์) {
return //๋ฐํ๊ฐ;
}
ex.
if(condition1) {
condition1 is true then
}
else {
condition1 is false then}
if(condition1) {
// condition1 is true then
} else if {
// (condition1 is false์์ ๋ฏธ๋ฆฌ ์ ์ &&)
// condition2 is true then
}
else {
// all conditions is false then}
if๋ฌธ์ ํต๊ณผํ์ง ๋ชปํด์ else if๋ฌธ์ผ๋ก ๋์ด์๋ค๋ฉด, ์ด๋ฏธ if๋ฌธ์ ์๋ ์กฐ๊ฑด์ ํด๋นํ์ง ์๋ ๊ฒ์ด๋ฏ๋ก else if๋ฌธ์ ๊ธฐ์ ํ ํ์๊ฐ ์๋ค.
๊ฐ๋จํ ๊ฐ ๋น๊ตํ ๋ ์ฌ์ฉ
let a = 2;
switch (a) {
case 1:
console.log('a๋ 1์
๋๋ค');
break;
case 2:
console.log('a๋ 2์
๋๋ค');
break;
default:
console.log('a๊ฐ์ ๋ชจ๋ฅด๊ฒ ์ด์');
}
์กฐ๊ฑด ? ์ฐธ์ผ ๋ ์คํํ ์ฝ๋(1์ค๋ง) : ๊ฑฐ์ง์ผ ๋ ์คํํ ์ฝ๋(1์ค๋ง)
ex.
let username="une";
username == "une" ? console.log("hi une") : console.log("who are u?)";
์ผํญ ์ฐ์ฐ์๋ฅผ ์ฒ์๋ถํฐ ๋ณ์์ ๋ด์ ์๋ ์๋ค.
let msg = username == "une" ? "hi une" : "๋๊ตฌ์ธ์?"
console.log(msg);