일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- React
- SpringBoot
- 이클립스
- JDBC
- View
- Database
- spring
- 조건문
- Scanner
- rpa
- Controller
- mysql
- 상속
- API
- jsp
- Thymeleaf
- MVC
- jquery
- db
- Board
- string
- Uipath
- git
- Oracle
- Array
- html
- 문자열
- Eclipse
- 배열
- Java
- Today
- Total
유정잉
27일차 JavaScript [ 출력, 함수 ] 본문
[ JavaScript 주석 처리 ]
[ JavaScript 종류 ]
- 내부 자바스크립트 (파일 안에 쓰는 작업)
- 외부 자바스크립트
[ JavaScript 출력 방법 3가지 ]
1. alert('출력내용'); : 알림창 형태
2. document.write('출력내용'); : 브라우저 안에 body에서 출력 (실무에서 제일 많이 사용 多)
3. console.log('출력내용'); : 오류 체크하기 위해 콘솔창에 출력 (f12 개발자도구 -> 콘솔)
[ JavaScript 변수 선언 3가지 ]
1. var (variables) : 변수의 재선언 가능, 내가 썻던 변수를 또 사용 가능 (주로 var 아니면 let이 사용됨)
2. let : 변수의 재선언이 불가능 !!! 값을 변경할 수는 있음 (요새는 let을 가장 많이 사용)
3. const (constant) : 값 조차 변경할 수 없음 재선언도 불가능, 잘 사용되지 않음
[ JavaScript 변수 선언 - 호이스팅 ]
호이스팅 (hoisting) : var 예약어를 사용한 변수는 선언하기 전에 실행하더라도 아직 할당되지 않은 자료형인 undefined 값을 가질 수 있다. 하지만 let 예약어를 사용한 변수는 선언하기 전에 사용할 경우 오류 메시지를 나타낸다. => var 대신 주로 let을 사용하는 이유 !!
[ JavaScript 자료형 ]
숫자, 문자열('' ""), bool(true false), function(함수), object, undefined
[ JavaScript 연산자 ]
[ JavaScript 백틱 ` ]
변수명을 +로 나열하는 것이 아니라 백틱(`)을 사용하여 ${변수명}으로 나열한다. => `내이름은 ${name}이다`
[ JavaScript 조건문 IF, switch문, 삼항조건연산자 ]
parseInt는 문자를 정수로 바꾸는 함수 / Number는 문자열을 정수로 변환하는 함수
[ JavaScript 연산자와 list 함수 응용 ]
[ JavaScript 반복문 for, while, do-while ]
[ JavaScript 함수 ]
함수 선언 : function 함수명() { 명령 }
함수 호출 : 함수명() 또는 함수명(변수)
[ JavaScript 재사용할 수 있는 함수 ]
매개변수, 인수, return
[ JavaScript 함수 표현식, 익명함수와 화살표함수 ]
익명함수는 이름이 없는 함수를 말한다. 즉, 익명 함수를 선언할 때는 이름을 붙이지 않는다. 익명 함수는 이름이 없어서 함수 자체가 식(expression)이므로 함수를 변수에 할당할 수 있으며, 또한 다른 함수의 매개변수로 사용할 수도 있다.
화살표함수는 ES6 버전부터는 => 표기번(화살표 표기법)을 사용해 함수 선언을 좀 더 간단하게 작성할 수 있다. 익명 함수에서만 사용할 수 있다. (매개변수) => { 함수내용 }
[ JavaScript 이벤트와 이벤트 처리 ]
- this.value = 자기 자신이 가지고 있는 value
[ JavaScript 함수 표현식, 내장함수 ]
- parseInt(문자열) : 문자열에서 숫자만 정수로 반환하는 함수
- isNaN(수식) : Not a Number : 수식이 NaN이면 참, 아니면 거짓
isNaN("hi"); 참 / isNaN(4); 거짓
[ JavaScript 함수 표현식, 타이머 함수 ]
- setTimeout() : 저장된 시간이 지난 후 한번 실행하는 함수
- setInterval() : 지정된 시간마다 계속 실행하는 함수
- clearTimeout() : setTimeout을 중지시키는 함수
- clearInterval() : setInterval을 중지시키는 함수
- 함수이름(function)() { 실행코드() }); setTimeout(function() { 실행코드() }, 시간);
[ JavaScript 함수 표현식, 생성자 함수 ]
1. 객체 만들 때 : var 객체명 = { 프로퍼티 : 데이터, 프로퍼티 : 데이터 ... 함수: function }
2. 객체 반환 함수(생성자 함수)
[ 복습 문제풀이 ]
<!DOCTYPE html>
<head>
</head>
<body>
<script>
//4가지 과목 점수를 prompt로 입력받아 출력하고 평균 구하기
let score1=prompt('첫번째 과목 점수 입력','숫자로만 입력');
let score2=prompt('두번째 과목 점수 입력','숫자로만 입력');
let score3=prompt('세번째 과목 점수 입력','숫자로만 입력');
let score4=prompt('네번째 과목 점수 입력','숫자로만 입력');
// Number 함수는 문자열을 숫자로 변환하는 함수 !!!
let avg=(Number(score1)+Number(score2)+Number(score3)+Number(score4))/4;
document.write('점수: '+score1+'점');
document.write('<br>');
document.write('점수: '+score2+'점');
document.write('<br>');
document.write('점수: '+score3+'점');
document.write('<br>');
document.write('점수: '+score4+'점');
document.write('<br>');
document.write("네과목 점수의 평균: " + Math.round(avg)); // 평균 소숫점 반올림
</script>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<style>
/* 제목을 화면 가운데에 가운데 정렬하기 위한 스타일 */
h2 {
text-align: center; /* 텍스트를 가운데 정렬 */
margin: 0; /* 위아래 여백 제거 */
padding: 20px 0; /* 좌우 여백 제거 */
}
</style>
</head>
<body>
<script>
document.write('<h2>4의 배수일까 아닐까</h2>');
var num = prompt('숫자를 입력하시오.');
if (num !== null) { // 사용자가 취소하지 않았을 경우에만 계속 진행
if (num % 4 == 0) {
document.write(num + '는 4의 배수입니다.');
} else {
document.write(num + '는 4의 배수가 아닙니다.');
}
}
</script>
</div>
</body>
</html>
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>연습문제 2</title>
<style>
body {
font-size:1.2em;
text-align:center;
}
p {
color:#f00;
font-weight: bold;
}
</style>
</head>
<body>
<h2>3의 배수 찾기</h2>
<script>
var i;
var userNumber = parseInt(prompt("몇 까지 3의 배수를 찾을까요?", "100"));
var count = 0;
if (userNumber !== null) {
for (i = 1; i <= userNumber; i++) {
if (i % 3 === 0) {
count++;
document.write(i + ", ");
}
}
document.write("<p>" + userNumber + "까지 3의 배수의 갯수 : " + count + "</p>");
}
</script>
</body>
</html>
<!DOCTYPE html>
<body>
<script>
// 생성자 함수
function order(price, size, color, title) {
this.price=price;
this.size=size;
this.color=color;
this.title=title;
}
// 공통 항목 : 생성자 함수로 부터 값을 공통적으로 뽑아내는 prototype 함수
order.prototype.market='컬리';
order.prototype.delivery='CJ대한통운';
order.prototype.result=function() {
alert(this.market + ',' + this.delivery);
alert(this.price + ',' + this.size + ',' + this.color + ',' + this.title);
}
var p1 = new order('50000','M','black','shirt');
var p2 = new order('60000','S','pink','t-shirt');
function show(e) {
if(e=='one') {
p1.result();
}
else if (e=='two'){
p2.result();
}
}
</script>
<div>
<button value="one" onclick="show(this.value)">shirt</button> <!--this는 버튼태그 value는 one!-->
<button value="two" onclick="show(this.value)">t-shirt</button> <!-- onclick의미 버튼 클릭했을 때 show 함수 호출 -->
</div>
</body>
</html>
[ JavaScript 이론 ]
웹 요소를 제어하는 자바 스크립트 !
HTML은 웹 문서의 내용을 구성하고, CSS는 웹 문서의 레이아웃이나 색상, 스타일 등일 지정한다.
여기에 자바스크립트를 추가하면 웹 문서의 각 요소를 가져와서 필요에 따라 스타일을 변경하거나 움직이게 할 수 있다.
자바스크립트는 HTML이나 CSS와 함께 사용하여 웹의 요소를 움직이거나 포토 갤러리를 펼쳐 놓는 것처럼 웹사이트 UI 부분에 많이 활용한다.
[ JavaScript 용어와 기본 입출력 방법 ]
알림 창 출력하기 : alert는 가장 많이 사용하는 간단한 대화 상자. 웹 브라우저에서는 작은 알림창을 열어 메시지를 표시할 수 있다. alert(메시지)
확인 창 출력하기 : confirm은 사용자가 [확인] 이나 [취소] 버튼 중에서 직접 클릭할 수 있다. confirm(메시지)
프롬포트 창에서 입력하기 : prompt은 텍스트가 있는 작은 창이다. 텍스트 필드 안에 간단한 메시지를 입력할 수 있다.
prompt(메시지, 기본값)
웹 브라우저 화면에 출력을 담당하는 document.write()문 : 큰따옴표나 작은따옴표 사이에 입력한 내용이 브라우저 화면에 그대로 표시된다. 따옴표 안에 HTML태그와 함께 사용할 수 있다.
콘솔 창에 출력하는 console.log() 문 : 콘솔 창에 소스 코드의 오류를 발견하거나 변숫값을 확인할 수도 있습니다. 웹 브라우저에서 콘솔 창 열어서 오류를 찾고 수정도 가능하다.
[ JavaScript 변수 알아보기 ]
변수(variable)란 : 프로그램이 실행하는 동안 값이 여러 번 달라질 수 있는 데이터를 가르킴. 반면 값을 한번 지정하면 바뀌지 않는 데이터를 상수(constant)
변수 선언 : 변수를 사용하려면 변수를 구별할 수 있도록 이름을 붙여주어야하는데, 이것을 변수선언 => var 변수명
1. var (variables) : 변수의 재선언 가능, 내가 썻던 변수를 또 사용 가능 (주로 var 아니면 let이 사용됨)
2. let : 변수의 재선언이 불가능 !!! (요새는 let을 가장 많이 사용)
3. const (constant) : 잘 사용되지 않음
4. 호이스팅 (hoisting) :
자바스크립트에서 변수를 사용할 때 조심해야할 개념이 있다. 바로 호이스팅 ! 호이스팅이란 '끌어올린다'를 뜻한다. 상황에 따라 변수의 선언과 할당을 분리해서 선언 부분을 스코프의 가장 위쪽으로 끌어올리는 것.
var 예약어를 사용한 변수는 선언하기 전에 실행하더라도 아직 할당되지 않은 자료형인 undefined 값을 가질 수 있다. 하지만 let 예약어를 사용한 변수는 선언하기 전에 사용할 경우 오류 메시지를 나타낸다.
=> var 대신 주로 let을 사용하는 이유 !! p.519, 526
[ JavaScript 자료형 이해하기 ]
정수 : 정수는 소수점 없는 숫자
실수 : 실수는 소수점이 있는 숫자
문자열 : 작은따옴표('') 큰따옴표("")로 묶은 데이터를 의미. 둘다 사용 가능
논리형 : 불린(Boolean)이라고도 하며, 참(true)이나 거짓(false)의 값을 표현하는 자료형
undefined : 자료형이 정의되지 않았을 때의 데이터 상태를 나타냄
null : 데이터의 값이 유효하지 않은 상태를 나타냄
배열 : 하나의 변수에 값을 여러 개 저장 할 수 있음. 배열은 여러 개의 데이터 값을 하나의 배열 이름으로 묶어서 선언함.
배열명["값1, 값2, 값3"]
[ JavaScript 연산자 이해하기 ]
= 은 대입연산자, == 은 항등연산자 equal, === 은 데이터 유형까지 일치해야하는 연산
[ JavaScript prompt()문과 parseInt()함수 ]
[ JavaScript 함수 ]
함수 : 여러 동작을 묶은 덩어리 동작해야 할 목적대로 묶은 명령을 함수(function). 즉 alert() 문이 자바스크입트에 포함되어 있는 여러 함수 중의 하나이다. alert() 함수는 알림 창을 표시할 때 쓰는 아주 많이 사용 되는 함수 ! 함수에 대한 정의를 호출 뒤에 해도 영향을 받지는 않지만 보통 함수 뒤에 호출을 한다.
함수 사용 이유 : 일종의 모듈화 작업
함수 선언 및 호출 : function 함수명() { 명령 }
[ 변수의 재선언과 재할당 ]
var를 사용한 변수는 호이스팅 외에도 재선언과 재할당을 할 수 있다.
[ let을 사용한 변수의 특징 ]
ES6 이전의 자바스크립트 프로그램에서는 var 예약어만으로 변수를 선언했다. var 예약어를 빠뜨리면 의도하지 않게 전역 변수가 되기도 하고, 프로그램 길이가 길어지다 보면 실수로 사용하는 변수를 재선언하거나 값을 재할당해 버리는 경우가 생기기도 한다.(=var의 단점)
그래서 ES6에서는 변수를 선언하기 위한 예약어로 let와 const가 추가 되었고, 되도록이면 var 예약어를 사용하지 않을 것을 권장한다.
예약어 var와 let, const의 가장 큰 차이는 스코프의 범위이다. var 함수 영역(레벨)의 스코프를 가지지만 let와 const는 블록 영역의 스코프를 가진다.
[ 블록 안에서만 쓸 수 있는 변수 ]
let 예약어로 선언한 변수는 변수를 선언한 블록( { } 로 묶은 부분) 에서만 유효하고 블록을 벗어나면 사용할 수 없다. 만약에 전역 변수를 선언하고 싶다면 let 예약어를 쓰지 않고 변수 이름과 초깃값만 할당하면 된다.
[ 재할당은 가능하지만 재선언은 할 수 없는 변수 ]
let 예약어를 사용하여 선언한 변수는 재할당할 수는 있지만 변수를 재선언할 수는 없다.
[ 호이스팅이 없는 변수 ]
var 예약어를 사용한 변수는 선언하기 전에 실행하더라도 아직 할당되지 않은 자료형인 undefined 값을 가질 수 있다. 바로 호이스팅 때문이다. 하지만 let 예약어를 사용한 변수는 선언하기 전에 사용할 경우 오류 메세지를 나타낸다.
[ const를 사용한 변수의 특징 ]
const로 선언한 변수는 상수변수(constant variable)이다. 상수는 프로그램 안에서 변하지 않는 값을 뜻한다. cost로 할당한 변수는 재선언 하거나 재할당할 수 없다.
[ 자바스크립트 변수 사용 방법 꿀팁 !!! ]
1. 전역 변수는 최소한으로 사용한다. (거의 사용하지 않음)
2. var 변수는 함수의 시작 부분에서 선언한다.
3. for문에서 카운터 변수를 사용할때는 var 예약어를 사용하지 않는다.
1) 블록 밖으로 var 선언 var i; for(i=1;i<=n;i++) { }
2) let를 사용하여 블록 변수로 선언 for(let i=1;i<=n;i++) { }
4. ES6을 사용한다면 예약어 var 보다 let을 사용하는 것이 좋다.
[ JavaScript 함수 표현식, 익명함수 ]
익명함수는 이름이 없는 함수를 말한다. 즉, 익명 함수를 선언할 때는 이름을 붙이지 않는다.
익명 함수는 이름이 없어서 함수 자체가 식(expression)이므로 함수를 변수에 할당할 수 있으며, 또한 다른 함수의 매개변수로 사용할 수도 있다. : 익명함수는 변수가 함수명을 대신한다.
[ JavaScript 함수 표현식, 화살표함수 ]
화살표함수는 ES6 버전부터는 => 표기번(화살표 표기법)을 사용해 함수 선언을 좀 더 간단하게 작성할 수 있다. 익명 함수에서만 사용할 수 있다. (매개변수) => { 함수내용 }
[ JavaScript 함수 표현식, 즉시 실행 함수 ]
한 번만 실행하는 함수, 나중에 호출 같은 거 할수 없음.
[ JavaScript 이벤트와 이벤트 처리기 ]
[ 이벤트 알아보기 ]
브라우저의 이벤트(event) 개념이 도입되면서 새롭게 구현된 것이다. 웹 브라우저를 기본으로 실행하는 자바스크립트에서 이벤트는 중요한 개념이다.
이벤트는 웹 브라우저나 사용자가 행하는 어떤 동작을 말한다. 예를 들어 키보드에서 키를 누르는 것도, 웹 브라우저에서 새로운 페이지를 불러오는 것도 이벤트이다.
하지만 웹 브라우저 안에서 이루어지는 모든 동작이 이벤트는 아니다. 이벤트는 웹 페이지를 읽어 오거나 링크를 클릭하는 것 처럼 웹 문서 영역 안에서 이루어지는 동작만을 말한다.
[ 이벤트 처리기 알아보기 ]
이벤트를 처리하는 가장 기본적인 방법은 이벤트가 발생한 HTML 태그에 이벤트 처리기를 직접 연결하는 것이다. 먼저 HTML 태그 안에서 'on' 다음에 '이벤트명'을 붙여서 속성 이름을 만들고, 그 다음에 실행할 이벤트 처리기의 함수명을 작성하면 된다 <태그 on이벤트명 = "함수명">
[ parseInt와 Number의 차이점 ]
<JavaScript> parseInt()와 Number()는 어떤 차이가 있을까? (tistory.com)
<JavaScript> parseInt()와 Number()는 어떤 차이가 있을까?
자바스크립트에서 문자를 숫자로 변환하기 위해 사용하는 방법으로는 parseInt()와 Number()가 있다. 더 간단하게는 문자 앞에 +를 붙여 숫자로 바꾸기도 한다. 어쨌든 둘 다 숫자로 변환해주니까 그
haruisshort.tistory.com
'네이버 클라우드 부트캠프 > 복습 정리' 카테고리의 다른 글
29일차 JavaScript [ 문서 객체 모델, Node ] (1) | 2024.04.01 |
---|---|
28일차 JavaScript [ 객체, 내장객체 ] (0) | 2024.03.29 |
26일차 CSS [ 배치, 플렉스 박스 ] (0) | 2024.03.27 |
25일차 CSS [ 기본태그 ] (0) | 2024.03.26 |
24일자 HTML < 기본 태그, Visual Studio Code > (0) | 2024.03.25 |