Javascript
[변수]
1. 전역변수 선언
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>step01jsbasic.html</title>
</head>
<body>
<script>
var v1;
const v2 = "불변 데이터!";
let v3;
v4 = 10;
v1 = 10;
v1 = '문자열';
console.log(v1);
</script>
</body>
</html>
2. 사용자 정의 함수
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>step01jsbasic.html</title>
</head>
<body>
<script>
v4 = 10;
function myFun(){
console.log(v4);
}
myFun();
</script>
</body>
</html>
- js에서도 함수를 선언하고 작성 했다면, 사용을 해줘야한다.
3. 지역 변수(local variable)
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>step01jsbasic.html</title>
</head>
<body>
<script>
function myFun(){
console.log('로컬 변수 익히기 - var, let 차이점!');
if(true){
console.log('true인 경우 실행!');
var lv1 = 1;
let lv2 = 2;
lv3 = 3;
console.log(lv1);
console.log(lv2);
console.log(lv3);
}
console.log(lv1);
console.log(lv2);
console.log(lv3);
}
myFun();
console.log(lv1);
console.log(lv3);
</script>
</body>
</html>
- var와 let은 비슷하지만 다른 특성을 가지고 있다.
- var와 같은 경우엔 지역 변수로 선언한 함수 안에서 전부 사용이 가능하다.
- let의 경우엔 함수 안의 if문 안에서만 사용이 가능하다.
- lv3의 경우엔 지역 변수로 선언되는 것이 아니고 전역 변수로 선언이 되어버린다.
[연산자 ==와 ===]
- 요즘 추세는 var보다 let을 사용하는 추세이다.
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
function myFun(){
let d1 = true;
let d2 = 'true';
console.log(d1);
console.log(d2);
let d3 = 1;
let d4 = '1';
console.log(d3);
console.log(d4);
console.log(d3 == d4);
console.log(typeof(d1), typeof(d2), typeof(d3), typeof(d4));
console.log(d3 === d4);
}
myFun();
</script>
</body>
</html>
console.log(d3 == d4);
: 타입은 다른데 값을 비교해서 true 값이 나온다.
console.log(d3 === d4);
: 타입을 비교해서 false 값이 나온다.
[함수 종류]
1. 이름 있는 함수
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>step03jsfunction.html</title>
</head>
<body>
<script>
function myFun1(){
console.log('이름있는 함수');
}
myFun1();
</script>
</body>
</html>
2. 변수에 함수 등록
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>step03jsfunction.html</title>
</head>
<body>
<script>
console.log('step02 - 함수 표현식');
let myFun2 = function(data){
console.log(data);
}
myFun2(10);
</script>
</body>
</html>
3. 즉시 실행 함수(무기명)
- 만들고 구현과 호출이 함축된 문법이다.
- 재사용성보다 이벤트 처리용으로 주로 사용한다.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>step03jsfunction.html</title>
</head>
<body>
<script>
console.log('step03 - 즉시 실행 함수')
(function(){
console.log("즉시 실행?");
}());
console.log('step03 - 즉시 실행 함수')
(function(data){
console.log("즉시 실행?", data);
}('fisa'));
</script>
</body>
</html>