My footsteps
자바스크립트 복습 본문
데이터
기본형식
-Boolean
-Number
-String
-undefined
-null
-Nan
-infinite
데이터 표현식
: 자바스크립트의 데이터의 기본형식이 모두 객체형식이라서 그것을 좀 ㅓㄷ 쉽게 표현할 수 있는 방법이 필요하다.
JSON(Javascript Object Notation)
-배열을 생성하는 json 은?
: []
-객체를 생성하는 json은?
: {}
배열 객체
: 콜렉션을 위한 기능 4가지를 가지고 있다.
- push()
- pop()
- shift()
- unshift()
배열을 조작(삭제,추가 등)하기 위한 메소드
- splice()
: 5개의 항목을 가지는 배열에서 3번째 값을 삭제하는 방법은?
: nums.splice(2,1);
연산자
산술연산
비교연산
관계연산
..
비교연산에서 참조가 같은지를 비교하는 연산과 값이 같은지를 비교하는 여산이 있다.
: == (값), ===( 참조)
True/False값을 묵시적으로 ㅍ ㅛ현하는 값들
if(-0) -> 참?거짓? : 거짓
if(Nan) -> 거짓?
제어구조
for(var a of ?)-> a는? 값
for(var a in ?) -> a 는? 인덱스
배열
함수
함수는 일반적으로 정의와 사용을 분리하는 방식으로 사용한다.
하지만 자바스크립트에서는 정의하는 방법이 아니라 객체생성?이라는 특이한 방식으로 함수를 정의한다.
따라서 객체마다 코드가 있는 방식이라서 프로그램 상으로 보면 코드 중복이 심하게? 발생하는 언어의 특징을 가진다.
함수를 정의하는 방법 3가지
- var f1 = new Fnction(“인자”,”코드”);
- var f1 = function(인자){코드};
- function f1(인자){코드};
함수를 사용할 때 가장 주의해야 할 것 중에 하나는 매개변수이다.
- 자바스크립트에서 매개변수는 실제로 전달되는 값을 저장하는 역할을 한다?
: 아니요 - 그럼 어떤 역할을 하는가?
: 별칭을 짓는 역할을 한다.
- 그럼 값은 어디에 저장되는가?
: arguments 콜렉션에 저장된다.
자바스크립트에서 지역변수는 있는가? 예를 들어 var a; 라고 선언하면 a는 지역변수인가?
: 위치에 따라서 달라집니다. (빙고) 오~~~~
그럼 전역 위치에 var a;를 선언했다고 가정하면 그럼 a는 지역변수 맞지 않는가?
: 위치가 전역이므로 전역변수가 된다.
그럼 중괄호를 이용해서 지역화를 하면 지역변수의 특징을 가지는가?
: 아니요
그럼 지역변수는 없는건가?
: 아니요
그럼 어떤 경우에 지역변수가 되는가?
: 함수 안에서만 지역화가 가능하다. (주의: ES6에서는 let, const를 이용하는 경우 지역변수가 된다.)
함수 안에 함수를 정의할 수 있는가? 다음처럼
function f1(){
function f2(){
}
}
: 그렇다.
그럼 안쪽의 함수를 내부함수라고 하는데, 그렇다면 내부함수에서는 외부 함수의 변수를 사용할 수 있나?
: 네.
그럼 내부함수가 외부함수의 변수를 사용함으로써 발생하는 개념이 클로저라는 것이 있다. 다음 중 클로저가 아닌 것은 어떤 것인가?
1)
function f1(){
return function(){
var x = 3;
return x + 3;
}
}
var f2 = f1();
2)
function f1(){
var a = 3;
return function(){
var a = 4;
return a + 3;
}
}
var f2 = f1();
3)
function f1(){
var a = 3;
function (){
return a + 2;
}
return a;
}
var f2 = f1();
4)
function f1(){
var a = 4;
var f2 = function(){
return a + 23;
}
return f2;
}
var f2 = f1();
'국비수업 > 수업정리' 카테고리의 다른 글
자바스크립트 / 8 (0) | 2023.03.30 |
---|---|
자바스크립트 / 7 (0) | 2023.03.29 |
자바스크립트 / 6 (0) | 2023.03.28 |
웹퍼블리싱(CSS) / 2 (0) | 2023.03.27 |
자바스크립트 / 5 (0) | 2023.03.27 |