My footsteps

자바스크립트 / 2 본문

국비수업/수업정리

자바스크립트 / 2

밀김 2023. 3. 22. 11:52
728x90

 

 

 

 

 

 

- 자바스크립트의 탄생 배경에는 전송하는 데이터에 대한 유효성 검사의 필요성 때문이다

 

- DOM(문서 객체 모델) : 문서 객체 모델, 즉 DOM은 웹 페이지(HTML이나 XML 문서)의 콘텐츠 및 구조, 그리고 스타일 요소를 구조화 시켜 표현하여 프로그래밍 언어가 해당 문서에 접근하여 읽고 조작할 수 있도록 API를 제공하는 일종의 인터페이스

 

- 폼객체 + 자바스크립트 => 입력폼에 있는 값을 유효성 검사를 한뒤에 서버에 보내는것

 

 


 

 

- 자스는 데이터와 콜렉션의 구분이 없다

 

- 자스 언어 값의 종류와 변수: 부울, 정수, 실수, 문자 ,문자열

 

- var : 변수 (정수,실수,문자,문자열 다 한꺼번에 담을수 있다) 

 

- 모든 클래스는 Object라는 부모가 있다. 왜일까? > 모든 클래스가 공통으로 갖고 있어야 하는 기능을 제공하기 위해서

좀더 거시적인 관점에서 얘기하자면, 객체를 일괄적으로 관리하기 위해서이다.(오브젝트는 모든 객체를 참조할수 있다)

 

 

 

 

<자바 방법.....>


- 하지만, 모든 객체를 참조할수 있는 오브젝트도 값은 참조할수 없다.(참조는 공간을 가지지 않기 때문) 그래서 그 값을 래핑해서 객체로 만들어준다

Object x = 3; > Object x = new Integer(3);

 

문자열은 객체라서 래퍼클래스에 포함되지 않는다. 그냥 바로 오브젝트에 포함됨

 

 

- 래핑되어있는걸 꺼내는것은 언박싱 이라고 한다

 

- 객체는 알아서 처리가 되고, 값들은 박싱이 된다 

 

		Object x =3; //Auto Boxing기능
		
		int y = (int) x; //Auto UnBoxing기능

 

		//Menual Boxing 수동 박싱 
		Object x1 = new Integer(3);
        //옛날에 쓰던 방식. 쓰지말라고 이클립스에서 자동 밑줄이 그어진다

 

 

- 하지만 지금은 자동으로 박싱이 된다

 


 

- 결론은 자스의 모든 기본형은 자동 박싱이 이루어진다는 것! (값변수라는 개념x 모두 참조변수,래퍼클래스가 기본형)

 

 

 

 

- 자스는 기본으로 홑따옴표를 쓴다 ' '

 

 

 


 

 

 

- var : var 선언은 전역 범위 혹은 함수 범위로 지정됩니다. var 변수가 함수 외부에서 선언될 때의 범위는 전역입니다. 즉, 함수 블록 외부에서 var 를 사용하여 선언된 모든 변수를 전체 윈도우 상에서 사용할 수 있는 것이다

 

 

 

    <script>
        var x = 3;
        var y = 3;

        console.log(x==y);
    </script>

- 자스 식쓰고,콘솔 출력하는 방법 console.log(x==y);

 

- 창 띄우면 화면은 공백이고 개발자도구-콘솔에서 보면 결과가 ture라고 뜬다

 

 

    <script>
        var x = 3;
        var y = new Number(3);

        console.log(x === y);
    </script>

- false가 나옴 ( === 세개 썼더니) 이유는? → ==는 객체의 값을 비교하고, ===세개는 같은 객체냐 참조를 비교하는것

 

 

    <script>
        var x = 3;
        var y = 3;

        console.log(x === y);
    </script>

- 이렇게 하면 true . 박싱이 된 3이라는 객체를 같이 참조하고 있기 때문

 

- 자스에는 무한을 나타내는 데이터형도 존재한다 

 

undefined 비교할때는 이런식으로 해야한다

 

 

- var는 자료형식에 제약이 없다 (= 동적 형식의 자료형. 예를들어 Exam 객체가 부모이고 그걸 상속받으면 Exam형식을 유지하고 받아야하는데 자스 var는 그러지 않아도 된다)

 

 


 

 

<자스의 배열 = 컬렉션>

 

- 자스의 배열은 공간을 알아서 늘려준다 (배열이 많은 기능을 갖고 있다)

 

- 배열 하나를 빼놓고 값을 채우는것도 가능하다

 

- undefined : 어떤것도 참조 하지 않는것. 자료형이 정해지지 않은것

 

첫번째는 배열의 크기 설정이 되고, 두번째는 배열의 초깃값 설정이 된다. 두번째의 길이는 3이 나옴

 

 

 

다양한 타입을 넣고, typeof로 꺼내볼수있다. String으로 나옴

 

 

 

 

이런식으로 배열을 넣는것도 가능하다

 

 

        var nums = new Array(5,10,20,"Hi",new Array(2,3,4));
        console.log(nums[4]);

이렇게 나온다

 


 

 

 

✏️ JavaScript의 탄생배경과 JavaScript란?

: 정적인 브라우저를 동적으로 만들어주는 스크립트

(스크립트란? 다른 프로그램에 의해 번역되거나 수행되는 프로그램이나 명령어들의 나열을 말함)

 

 

✏️ JavaScript의 기본 타입

: number  boolean  string  null  undefined(참조가 정해지지 않은)  infinity(무한. 잘 안씀) 

 

 

✏️ 수업 때 배운 JavaScript의 특징

: 100프로 참조변수이다. (전부 다 객체) 값변수는 없다

동작을 하면서 계속 객체가 바뀐다 (동적 형식 자료형이다)

변수 첫 선언의 의미가 없다. 실행 중에 도킹되는 객체에 따라 런타임에서 판단한다

 

 

 

✏️ 일반적인 프로그래밍 언어의 배열과 다른 JavaScript 배열의 특징

: 배열안에 배열을 넣을 수도 있고 가변배열이다.

안에 넣는 타입이 정해져 있지 않다 (그래서 type of로 타입을 볼수 있다)

 

 

 

 

 

 

 

 

728x90

'국비수업 > 수업정리' 카테고리의 다른 글

자바스크립트 / 4  (0) 2023.03.24
자바스크립트 / 3  (0) 2023.03.23
자바스크립트 / 1  (0) 2023.03.21
JFrame  (0) 2023.03.21
오버라이드 / 동적바인딩  (0) 2023.03.20