학습 언어

HTML / CSS / JavaScript

학습 내용

HTML /CSS

싸이월드 만들기 4탄

JavaScript

함수 : 우리가 직접 만드는 기능

function hello( ){

alert (“안녕하세요”)

}

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

함수를 호출했을 때 실행할 명령문

} (데이터 반환 : Optional)

* 매개변수(Optional) :

기본값 함수 매개변수를 사용하면 값이 없거나 undefined가 전달될 경우 이름붙은 매개변수를 기본값으로 초기화 할 수 있습니다.

* console.log :

데이터가 작동하지 않음. / 데이터 처리 과정 중간을 확인 (결과를 반환하지 않음)

return :

데이터를 반환. / 결과에 반영됨

함수 작성 방법

( 함수 선언식 / 함수 표현식 / 화살표 함수 )

1. 함수 선언식

function hello(name) {

alert( name + “님 안녕하세요”)

}

2. 함수 표현식

const hello = function(name) {

alert( name + “님 안녕하세요”)

}

3. 화살표 함수

const hello = (name) => {

alert( name + “님 안녕하세요”)

}

const auth ( ) => {

let a = String(Math.floor(Math.random() * 1000000)).padStart(6, “0”)

document.getElementById(“target”).innerText = a

document.getElementById(“target”).style.color = “#” + a

}

내장 함수 :

자주 사용되는 함수를 자바스크립트에 내장하여 편리하게 이용할 수 있도록 한 것

시간 지연 함수 : 일정한 시간을 기다렸다가 실행

setTimeout(func, time)

시간 반복 함수 : 일정 시간 마다 반복하여 실행

setInterval(func, time)

* 입력하는 시간 단위는 ms 입니다. ex) 3s → 3,000ms

소감

싸이월드 HTML에 직접 자바스크립트를 적용하여 실습하니 전체적인 흐름을 파악 할 수 있었습니다. 하지만 아직은 자바스크립트를 응용 적용하는것은 어렵게 느껴지는 것 같습니다. 남은 베이스캠프도 무사히 끝낼 수 있게 꾸준히 학습하겠습니다.

학습 언어 

HTML / CSS / JavaScript

 

학습 내용

HTML / CSS

싸이월드 만들기 3일차 진행 

 

JavaScript

데이터 타입과 연산자

( 데이터 타입 / 산술 연산자 / 비교 연산자 / 논리 연산자 )

 

1) 데이터 타입 :

String (문자열) : “code”

Number (숫자) : 157

Boolean (참과 거짓) : true

Object (객체) : { }

Null (값이 없음) : null

undefined (정의되지 않음) : undefined

 

* 배열은 Object(객체) 의 종류

* Null / undefined / 0 의 정의는 모두 다름

- 0 : 0 이라는 값이 존재

- Null : 우리가 아무것도 없음을 직접 입력

- undefined : 컴퓨터가 값을 인식하지 못함

 

 

2) 산술 연산자 :

더하기 ( + ), 빼기 ( - ), 곱하기 ( * ), 나누기 ( / ), 나머지 ( % )와 같은 연산을 하는 기호를 의미합니다.

* 숫자와 문자열이 합쳐지면 문자열로 변경됨

* - 는 문자열과 숫자로 입력해도 연산이 가능함

 

3) 비교 연산자 :

좌우의 두 값을 비교해야 할 때 사용하는 연산자이며, Boolean을 반환합니다.

( ===, !==, <=, >=, >, <, ==, !=)

* 크거나 같다, 작거나 같다는 무조건 등호 먼저 사용 (>=, <=)

 

4) 논리 연산자 :

&& (and) : 양쪽 모두 true일경우 true

|| (or) : 한쪽만 true 여도 true

! (not) : Boolean을 반전 시킴

 

조건문 :

if (조건) {

     console.log ( “ 조건 1에 만족합니다.” )

} else if (조건) {

     console.log ( “ 조건 2에 만족합니다.”)

} else {

     console.log ( “조건에 만족하지 않습니다” )

 

핵심 : 시작과 끝이 존재합니다.

*else if는 무한대로 사용 가능

*else 에는 조건이 없습니다.

 

const profile = {

     name: "철수",

     age :12,

     school :"다람쥐 초등학교"

}

 

if (profile.age >= 20) {

     console.log("성인입니다.")

} else if (profile.age >=8) {

     console.log("학생입니다.")

} else if (profile.age > 0) {

     console.log("어린이입니다")

} else {

     console.log("잘못 입력하셨습니다")

}

// VM2754:10 학생입니다.

 

 

반복문 :

for (초기식; 조건식; 증감문) {

반복해서 실행할 내용

}

 

for (let i = 0; i < 5; i = i + 1 {

console.log( “hello” )

}

 

* 핵심 : 몇 번 반복할 것인가

* const 는 재할당이 불가능하므로 반드시 let이나 var로 선언해야합니다.

* 변수명은 자유롭게 설정할 수 있음

*  i = i + 1 → i++특정 조건 만족시,
   조건식을 통한 정상 종료 이전에도 종료(break) 가능
   명령문을 실행하지 않고 다음 반복으로 건너뛰기(continue) 가능

* `${   }`
console.log (`문자열과 ${변수}를 혼합하여 작성 할 수 있습니다.`)

 

수학 객체 :

자바스크립트의 수학 기능을 사용하는 명령어

 

최대값 구하기 ( Math.max(2, 1, 6) )

최소값 구하기 ( Math.min(2, 1, 6) )

0~1 랜덤 수 생성 ( Math.random( ) )

반올림 ( Math.round(2.12) )

올림 ( Math.ceil(2.12) )

버림 ( Math.floor(2.12) )

 

6자리 랜덤 숫자 생성 코드

// 인증번호 랜덤 생성기

 

Math.floor( Math.random() * 1000000)

// 17259

String (Math.floor( Math.random() * 1000000))

// '43635'

String (Math.floor( Math.random() * 1000000)).padStart(6,"0")

// '096786'

let result = String (Math.floor( Math.random() * 1000000)).padStart(6,"0")

// undefined

result

// '095286'

result

// '095286'

result

// '095286'

* 마지막 3 코드의 숫자가 같은이유는 4일차 학습 예정

 

DOM (Document Object Model)

- JavaScriptHTML 문서를 연결해주는 역할 (HTML, CSS의 제한된 기능을 보완해 줄 수 있음)

1. 학습 언어 

HTML / CSS / JavaScript

 

2. 학습 내용

1) HTML 

싸이월드 만들기 실습 진행

<iframe :scr="HTML 파일 경로"></iframe> : HTML 파일을 불러올 수 있음

2) CSS

width :100%

height :100%

부모 태그의 크기가 지정 되었을 때 사용 가능 ( 뷰포트 기준이나 글씨 크기는 vh, vw, rem, em 등으로 사용 (차후 학습예정) )

3) JavaScript

변수

-어떤 관계나 범위 안에서 여러가지 값으로 변할 수 있는 수

상수

-변하지 아니하는 일정한 값을 가진 수나 양

 

변수와 상수 : 데이터를 담는 공간(상자)

 

사용 방법

1. 선언 (let 변수명)

2. 할당 (변수명) = (데이터)

3. 선언+할당 let (변수명) = (데이터)

 

** Chrome 개발자 도구 :

웹사이트를 전반적으로 분석하고 시험해 볼 수 있도록 도와주는 도구

(새로 고침 / 새 탭 열기를 하면 내용이 날아감)

1. 요소 (Elements) : HTML CSS 분석하고 수정해볼 수 있는 도구

2. 콘솔 (Console) : 현재 로딩된 페이지에서 자바스크립트를 시험하거나 로그/오류 메세지 등을 확인 할 수 있는 도구

3. 소스( Resources) : 현재 로딩된 페이지에서 사용된 리소스를 열람할 수 있는 도구

4. 네트워크 (Network) : 서버와의 통신 내역을 보여주는 도구

5. 성능 (Audits) : 웹 어플리케이션의 성능을 향상시킬 방법을 컨설팅해주는 도구

 

* index : 배열에 있는 각 데이터의 위치

인덱스는 0 부터, 길이는 1부터 카운트

 

 

3. 소감

페이지를 구성할때 가장 중요한것은 영역을 미리 구분하여 class를 지정해 주는 것이라고 느꼈습니다.

JavaScript를 처음 접하여 아직은 생소하지만 멘토님이 말씀해주신 것처럼 전체적인 흐름을 이해하기 위해 노력하겠습니다.

HTML

1) input

<input type="text / radio / checkbox" placeholder="여기에 입력하세요">
* name 속성을 지정하면 하나의 그룹으로 인식됩니다.

 

CSS

1. CSS를 HTML에 적용하는 방법 및 이모지 추가 방법

CSS을 HTML에 적용
<link href="CSS 파일 경로" rel="stylesheet">
이모지 추가
Font Awesome 페이지 code를 <head>에 추가 후 문서에 원하는 이모지 적용

2. box-sizing (전체 태그에 적용 ( * {} )

-기본값 box-sizing: content-box;
-우리가 사용할 값 box-sizing:border-box;
(원하는 디자인의 box size 혼란 발생 방지)

3. 주요 학습 태그

display:flex; - 요소를 블럭과 인라인 요소 중 어느 쪽으로 처리할지 설정
flex-direction : row (가로 정렬) / column (세로 정렬);
justify-content: start / center / space-between / space-around / space-evenly
align-items : stretch / center / start / end

*justify-content의 속성입니다.

소감

display를 적용하는 방법이 많이 어렵지만 앞으로 과제와 강의를 학습하면서 이해할 수 있을 것 같습니다. 그 밖에 HTML과 CSS의 다양한 태그들을 반복사용하여 익숙하게 만들고 싶습니다.
1일차 강의를 정신없이 수강 하였습니다. 2일차부터 더욱 집중하여 참여 하겠습니다.

 

+ Recent posts