프론트엔드 23

Nodejs 로 랜덤 강아지 사진 출력하기 실습

nodejs : backend에서 서버에 대한 개발을 하는 도구 nodejs는 chrome의 자바스크립트 엔진 v8을 사용한다. 오늘은 nodejs로 랜덤으로 강아지 사진이 출력되는 예제를 만들어볼것이다. npm init Nodejs 프로젝트를 실행할때 package.json을 생성 해준다. npm init -y npm init만 입력하면 기본 양식을 직접 정해줘야하는데 -y라는 속성을 사용하면 default값으로 설정된 packge.json을 만들겠다라는 의미다. npm init보다 조금 더 편하고 한번에 packge.json을 만드는거라고 생각하면 된다. 이 예제를 위해서는 express, ejs, request 템플릿이 필요하기때문에 설치해주겠다. npm install express ejs requ..

[javascript] 회원가입 유효성 , form 입력값 확인 구현 + 코드 리뷰 피드백

회사에서 이틀동안 html,css , javascript 교육을 받은 후, 회원가입 폼을 구현하는 실습시간을 가졌다. 오후에는 코드 리뷰 시간을 가졌는데 리뷰를 할줄 알았으면 조금 더 성의있게 열심히 했을텐데 ... 조금은 아쉬웠다 다음부터는 작은거라도 꼼꼼히 코드 작성하기 ...!! 코드 리뷰를 한다길래 처음에는 떨렸지만 막상 해보니까 재미있고 더 열심히 공부해서 다른 사람들의 코드를 다 이해하고 싶어졌다 ...!!! 화이팅 /* 1. 정규식을 이용해서 이메일 유효성 검사 기능구현하기 */ document.getElementById('email').addEventListener('blur', function(event) { const value = this.value, elParent = this.pa..

html <label>, <small> 태그 정리

백엔드 인턴으로 입사하였지만 현재는 프론트엔드 교육을 받기때문에 html, css, javascript를 하고있다 오늘은 , 태그를 정리할것이다 뜬금없이 둘을 정리하는 이유는 ,, html코드를 보는데 이 두개의 태그만 낯설어서 하게 되었다 폼의 양식에 이름을 붙이는 태그 for 속성을 사용하여 다른 요소와 결합할 수 있으며 이때 요소의 for 속성값은 결합하고자하는 요소의 id 속성값과 같아야지 연결이 가능하다. label은 브라우저에 의해 일반적인 텍스트로 랜더링되지만 클릭하면 연결된 양식에 입력할 수 있도록 하거나, 체크를 하거나 해제까지 한다. 아이디 text가 아닌 아이디를 클릭했는데 text창이 강조되는걸 볼 수 있다 덧붙이는 글이나, 저작권과 법률 표기 등의 작은 텍스트를 나타내는 태그 아이..

[javascript] blur와 focus

focus 이벤트는 요소가 포커스를 받을때 blur 이벤트는 포커스를 잃을 때 발생한다. javascript.info에 설명이 잘 되어있어서 참고해서 적었다 input.onblur = function(){ if(!input.value.includes('@')) { input.classList.add('invalid'); error.innerHTML = "올바른 이메일 주소를 입력하세요." } }; input.onfocus = function() { if (this.classList.contains('invalid')) { // 사용자가 새로운 값을 입력하려고 하므로 에러 메시지를 지움 this.classList.remove('invalid'); error.innerHTML = ""; } }; blur 핸..

인턴 교육 시작 + <fieldset> , <table> 태그 정리

오늘부터 본격적인 교육이 시작된다 틈틈히 기록해야지 ! 요소 : 웹 양식의 여러 컨트롤과 레이블()을 묶을 때 사용함. 요소로 그룹의 설명을 제공할 수 있음 *특성 disabled : 지정한 경우, 모든 자손 컨트롤 비활성화되므로 편집 불가능 단, 안의 양식 요소는 비활성 상태로 전환되지 않음 form : 요소와 연결할 요소의 id name : 그룹과 연관지을 이름 Disabled fieldst Name: 비활성화 된 을 볼 수 있따 순서가 있는 목록을 만들때는 ol 의미없는 목록을 만들때는 ul 항목은 li 태그 : 테이블을 만드는 태그 : 테이블의 헤더부분을 만드는 태그 테이블의 행을 만드는 태그 테이블의 열을 만드는 태그 * 와 의 개수는 동일한 것이 좋고 값을 비워야한다면 로 열을 생성 후 , 값..

[Bootstrap] 부트스트랩 사용하기

Bootstrap이란 ? 트위터에서 시작된 프론트엔드 개발을 위한 프레임워크다. 트위터에서 사용되는 각종 레이아웃, 버튼, 입력창 등의 디자인과 기능을 css와 javascript로 만들어놓은 것이다. 글자 , 인용문, 목록 , 표 , 입력폼 , 버튼 , 이미지, 아이콘 등의 요소들을 모두 내장하고 있다. pc용만 아니라 태블릿이나 스마트폰 같은 모바일용 디자인도 반응형으로 지원한다. 버전 차이가 있는데 버전 4는 제이쿼리를 사용하지만 버전5부터는 바닐라 자바스크립트만을 사용한다고 한다. 사용법 1. bootstrap 다운로드 다운로드 후 사용할 수 있다. 2. CDN을 통해 불러오기 별도의 다운로드없이 코드 몇줄로 불러올 수 있다. 사이에 코드를 적고 예시로 밑에 있는 코드를 붙여넣기 해보겠다. htt..

프론트엔드 2022.07.17

노마드 코더 바닐라 js 챌린지 수료 후기 + 내가 만든 Google Momentum 👩🏻‍💻

6/6 ~ 6/20까지 했던 노마드 코더 바닐라 js 챌린지가 드디어 막을 내렸다. 그동안 냈던 퀴즈, 과제를 검토해서 최종적으로 오늘 수료 여부 메일이 왔는데 다행히 무사히 수료를 하였다 !! 결석은 한번도 안했지만 몇번 제출한 코드가 답지랑 달라서 조금 걱정했었는데 ,, 휴 괜한 걱정이었다. 느낀점✨ 확실히 아직까지의 나는 스스로 하는것보다는 과제나 퀴즈처럼 문제가 있을때의 학습 효과가 좋다는 점이다..!! 그리고 짧은 시간에 자바스크립트에 흥미를 붙이고싶다면 이 챌린지를 적극 추천한다. 매일매일 정해진 과제를 했다는 쾌감과 마지막에 웹사이트라는 결과물이 나오기때문에 더욱 좋다 챌린지를 하며 노력한 점 ✨ 마지막에 css를 통해서 각자의 스타일을 입히기때문에 다 달라보이지만 사실 js만 놓고 봤을때는..

[바닐라 js 챌린지] 6.0강 Math.random(), Math.floor() ✨

6.0강은 명언파트다 ! 홈페이지를 새로고침할때마다 다양한 명언들이 랜덤으로 뜨는 걸 구현해볼거다. 우선 html에 명언과 작가의 이름을 넣게끔 , 태그를 생성해준다. const quotes = [ { quotes: "이 세상에 위대한 사람은 없다. 단지 평범한 사람들이 일어나 맞서는 위대한 도전들이 있을 뿐이다.", author:"윌리엄 프레데릭 홀시", }, { quotes:"해보지 않고는 당신이 무엇을 해낼 수 있는지 알 수 없다.", author: "프랭클린 아담", }, { quotes:"위대한 업적은 대개 커다란 위험을 감수한 결과이다", author:"헤로도토스", }, ]; // 명언 준비 실제로는 명언을 한 10개 정도 준비했는데 다 적기에는 많아서 세개만 적어줬다 ! const quot..

[바닐라 js 챌린지] 5.0강 setInterval(), setTimeout(), .padStart()✨

5.0 setInterval과 setTimeout 에 대해서 본격적으로 배운다. const clock = document.querySelector("#clock"); function sayHello(){ console.log("Hello"); } setInterval(sayHello, 1000); // 1초마다 sayHello가 반복 setInterval : 원하는 코드를 바로 실행하지 않고 지정한 시간마다 반복적으로 실행하는 함수 시간은 밀리초 (ms) 단위를 사용한다. const clock = document.querySelector("#clock"); function sayHello(){ console.log("Hello"); } setTimeout(sayHello, 1000); // 1초마다 sa..