본문 바로가기
[웹]

[JavaScript] 간단 정리

by Hevton 2020. 9. 24.
반응형

▶︎ 아주 기본적이고, 많이 쓰이는 함수

document.write() : 웹페이지에 출력

alert() : 알림창 (개인적으로 응용범위가 많아 좋아함)

document.querySelector() : 괄호안의 선택자를 만족하는 문서 내 ‘첫번째 태그 하나’를 리턴.

document.querySelectorAll() : 괄호안의 선택자를 만족하는 문서 내 ‘모든 태그’를 리턴.

 

 

▶︎ 자료형

  • 기본 자료형
    • Boolean
    • Null
    • Undefined
    • Number
    • String
    • Symbol
  • Object

 

▶︎ 자바스크립트 깨알 정리

 

▪︎ 자바스크립트에서 변수를 다룰 땐 var 를 이용함.

 

▪︎ 문자열을 감쌀 때 php와 마찬가지로, ‘’로 감싸던 “”로 감싸던 상관없음.

 

▪︎ 태그의 onclick 속성값에는 무조건 자바스크립트가 들어감.

+onclick안의 자바스크립트에서 참조하는 this는 해당 태그를 의미함. 

 

▪︎ 자바스크립트에서는 비교연산자 ==가 ===임. (세개)

자바, C, C++ 등에서는 ==, SQL에서는 =, 자바스크립트에서는 ===

-> 이에 대해 더 알아보니, 자바스크립트에서는 다른 언어들과 달리 ==와 === 가 둘다 존재한다고 함.

==는 비교 시 피연산자들을 비교할 수 있는 형태로 형변환 시키는데에 반해

===는 비교 시 피연산자들을 형변환 시키지 않는다고 함.

그리고 가능한 ===을 통한 순수 비교를 권장.

[ 참고 정리 ]

velog.io/@jakeseo_me/자바스크립트-개발자라면-알아야-할-33가지-개념-5-vs-3분만에-배우기-번역

 

자바스크립트 개발자라면 알아야 할 33가지 개념 #5 == vs === 3분만에 배우기 (번역)

들어가기 전에 이 포스팅은 https://github.com/leonardomso/33-js-concepts 에 있는 포스팅들을 번역한 것입니다. 오역이나 의역이 있을 수 있습니다. 지적해주시면 확인 후 바로 정정하겠습니다. original sourc

velog.io

 

 

▪︎ php에서

<?
echo “<br>”;
?>

처럼 javascript에서도

<script>document.write(“<br>”); </script>

를 사용함. (출력문 안에 태그를 넣어서 HTML 문법을 실행시킬 수 있음)

 

▪︎ 자바스크립트 배열 예제

var arr = [“one”, “two”, “three”];

arr.add(“four”);

-> 다른 언어들의 기본 배열들보다 동적인 것을 알 수 있음.

 

▪︎ 한 페이지 내에서 스크립트를 여러번 열고 닫는 것에 상관없이 다 자바스크립트 데이터는 연관되어있음

(<script>var hello=“hi”;</script> 하고, 나중에 <script>document.write(hello)</script> 해도 된다는 것.)

 

▪︎ 자바스크립트에서의 함수를 정의할 때 function이라는 키워드를 붙인다.

function 함수이름(매개변수들) {

// return or not.

}

 

+ 자바스크립트에서는 매개변수를 선언할 때 그냥 변수이름만 넣어줌

ex) 

function hello(z) {

}

+ 자바스크립트에서는 리턴값 유무에 상관없이 함수 헤드를 작성하고, 함수 안에서 return을 이용해 리턴시키면 됌. 매우 간단.

 

▪︎ 자바스크립트에서 객체 선언

var hello = {

id:”hevton”,

job:”developer”,

print:function() { }

};

값을 꺼내 쓸 때 -> hello.id 또는 hello[“id”] 이용.

함수를 사용할 때 -> hello.print();

 

+ hello.phonenumber = “010-xxxx-xxxx” 로 새로운 변수에 대해 값도 추가할 수 있음.. 참 유별난 javascript.

마찬가지로 hello.func = function() {

} 정의를 통해 함수도 넣어줄 수 있음…

 

▪︎ 이건 다른 언어들과 공통적일 수 있는 부분.

객체 안에 정의된 변수 = property

객체 안에 정의된 함수 = method 라고 부름.

 

▪︎ 자바스크립트의 재사용성을 위해 파일로 분리하는 방법

CSS에서 style 태그 안의 코드들을 모두 복사해서 .css파일로 옮긴 뒤, <link rel="stylesheet" href="파일명.css">

형태를 취한 것처럼, script 태그 안의 코드들을 모두 복사해서 .js 파일로 옮긴 뒤에 <script src=“파일명.js”></script> 형식으로 참조한다.

 

+ 이렇게 파일로 분리하는 것이, 웹서버의 트래픽 상에서는 좋지 않아 보일 순 있으나 사실상 ‘캐싱’ 이라는 기능 덕분에 js파일이 변하지 않는 한 웹브라우저는 한번 다운로드해놓은 파일을 추가 다운로드 없이 계속 이용하기 때문에 웹서버도, 클라이언트도 비용을 절감할 수 있다.(css파일도 마찬가지. 내생각엔 html에서 참조하는 추가 파일들은 알아서 캐싱하는듯?)

 

▪︎ jQuery 라이브러리를 사용하면, 자바스크립트 코드를 매우 간결하게 줄일 수도 있다.

(파이썬이 라이브러리가 너무 많기 때문에 코드가 매우 짧은 이유처럼..)

 

▪︎ 더욱 알아갈 내용

document : 태그에 관해 다룰때나, 기본적인 기능들.

DOM : document보다 큰 범위.

window : 웹 페이지가 아닌 웹 브라우저에 대해 다룰 때.

ajax : 웹페이지를 리로드하지않고 정보를 변경할 때.

cookie : 웹페이지가 리로드되어도 현재상태를 유지하고 싶을 때.

 

 

▶︎ 느낀점

일반적인 객체지향 언어들과 달리 클래스와 객체의 개념이 모호한 같음.. 약간 압축시킨 느낌? 이해에 다소 헷갈림이 있음.

자바가 파이썬화 되는 느낌. 속상하다.

 

 

수업의 출처 : opentutorials.org 이고잉님.

반응형

'[웹]' 카테고리의 다른 글

[JavaScript] Template Literal  (0) 2020.09.29
[Node.js] Node.js  (0) 2020.09.28
[JavaScript] JavaScript 복습시작.  (0) 2020.09.23
[CSS] 반응형 웹 디자인  (0) 2020.09.22
[CSS] 웹 페이지 디자인 언어  (0) 2020.09.22