[JS] 1주차 스터디 내용

웹페이지

- HTML

- CSS

- JS: 웹 동작 구현

 

자바스크립트

- 객체 기반 스크립트 언어

- 동적 및 인터프리터 언어

- 객체 지향형+함수형 

 

자바스크립트의 동작

- HTML의 내용 변경

- HTML의 속성 변경

- HTML의 스타일 변경

 

자바스크립트의 문법

- 리터럴: 값 

- 식별자: 변수 혹은 함수의 이름 

1. camel case: firstVar

2. Underscore case: my_first_javascript 

- 키워드: 어떠한 역할 수행을 위함, 식별자 사용 금지 

- 주석: c와 동일 

 

자바스크립트의 적용 

1. 내부 자바스크립트 코드로 적용

<script> 태그로 HTML 문서 안 삽입 

<head>
	<meta charset="UTF-8">
    <title>JavaScript Apply</title>
    <script>
    	function printDate() {
        	document.getElementById("date").innerHTML = Date();
        }
    </script>
</head>
<body>
	<p> 자바스크립트를 이용하면 현재 날짜와 시간 정보에도 손쉽게 접근 가능 </p>
    <button onclick="printDate()"> 현재 날짜와 시간 표시 </button>
    <p id="date"></p>
    <script>
    	function printDate() {
        	document.getElementById("date").innerHTML = Date();
        }
    </script>
</body>

2. 외부 자바스크립트 코드로 적용 

js확장자 파일 생성 -> <script> 태그로 파일 포함시키기 

<head>
	<meta charset="UTF-8">
    <title>JavaScript Apply</title>
    <script src="/examples/media/example.js"></script>
</head>
function printDate(){
	document.getElementById("date").innerHTML=Date();
}

 

 

자바스크립트 자료형 타입

1. 원시 타입(primitive) 

숫자: 매우 크거나 작은 수는 e 사용 

var firstNum=10;
var secondNum=10e6; // 10000000

 

문자열: 따옴표로 둘러싸인 문자의 집합

var firstStr = "문자열";
var secondStr = "나는 '문자열'";

//숫자와 문자열 합치기, 숫자가 문자열로 자동 변환
var num=10;
var str="JavaScript";
document.getElementById("result").innerHTML = (num + str); //10JavaScript

 

불리언(boolean) 

var firstNum=10;
var secondNum=11;
document.getElementById("result").innerHTML = (firstNum == secondNum); //false

 

심볼:ECMAScript 6부터 제공 

유일하며 변경할 수 없는 타입 -> 객체의 프로퍼티를 위한 식별자로 사용 

var sym = Symbol("javascript"); //symbol 타입 
var symObj=Object(sym); //Object 타입

 

undefined

null: object 타입, 값이 정해지지 않은 것

undefined: '타입'이 정해지지 않음 

var num; //undefined 
var str = null; //object의 null

동등연산자(==)과 일치연산자(===) 구분 

null == undefined; //같은 의미 
null === undefined; //타입 다름, 일치 X

 

2. 객체 타입 

객체: 여러 프로퍼티나 메소드를 같은 이름으로 묶어놓은 일종의 집합체 

 

*프로퍼티: 다른 값과 연관된 값 

const str='문자수';

console.log(str.length);

위 예시에서 문자열에 length라는 프로퍼티 존재, object의 특징 

 

*메소드: 객체가 가지고 있는 동작, 프로퍼티로 정의된 함수