55,000원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 해결됨문법 공부 다음엔, 자바스크립트 프로젝트 101
재밌게 잘 듣고있어요~
안녕하세요 리액트에 관심생겨서 듣고있는 주니어 백엔드 개발자입니다. 지금 수강순서를JS es6+문법(완) -> 프로젝트101(현 강의) -> 모던스크립트 딥다이브(책) -> 리액트 강의(인프런)순으로 학습하려고 하는데 괜찮을까요?하나 더 질문이 있는데,, 그 es6+문법이 크롬 2020버전 이후면 대부분 동작할까요?
- 해결됨문법 공부 다음엔, 자바스크립트 프로젝트 101
bmi 계산기 css가 적용이 안됩니다
Refused to apply style from 'http://127.0.0.1:5500/common/reset.css' because its MIME type ('text/html') is not a supported stylesheet MIME type, and strict MIME checking is enabled.콘솔창에 이렇게 뜨는데 뭐가 문제일까요?
- 해결됨문법 공부 다음엔, 자바스크립트 프로젝트 101
trello-app에서 질문 있습니다
이 부분에서 if문 들어가기 전 targetId는 uuid로 나옵니다. listsIds는 doing, todo이런 리스트들만 있구요. includes를 해도 해당 targetId인 uuid 값이 listsId에 없어 if문이 넘어갈거 같은데 들어간다는게 이해가 안됩니다.
- 해결됨문법 공부 다음엔, 자바스크립트 프로젝트 101
깃허브 자료에 bmi 계산기 문의
bmi 계산기 파트를 듣고있었습니다. 깃허브 자료에 css를 봤는데 css가 완벽하게 들어가 있는게 맞을까요?한번 확인 부탁드려요.
- 해결됨문법 공부 다음엔, 자바스크립트 프로젝트 101
아 네~다시 질문드립니다.
아 네네...그렇제 않아도 제가 안눌렀는데 해결로 되어 있어써.ㅡㅡ파일은 첨부가 안되는 거 같아서 깃허브에 올려서 링크를 연결해두었습니다.강사님 수업을 듣고 나름대로 조금 수정을 해봤습니다. 우선 삭제버튼을 아이콘폰트로 바꾸고 전체 개수와 전체 삭제등을 추가했구요,근데, 문제가 발생한것이 처음엔 목록을 몇개 만들어보고 삭제버튼을 클릭해보면 화면로 로컬스토리지가 잘 삭제가 돌일하게 잘 되었구요, 그런 다음 새로고침을 눌러도 변함없는 확인하기 위해 새로고침을 누르고 다시 아무거거 한개 삭제버튼을 한번 더 눌러보면 화면에서는 누른것만 지워졌는데, 로컬스토리지에서는 어떤 항목의 삭제버튼을 눌어도 무조건다 지워진 빈 배열이 되어서요.... https://github.com/web1004/ask
- 해결됨문법 공부 다음엔, 자바스크립트 프로젝트 101
filter 영상에서 질문이 있습니다
const selectCategory = (e) => { if (!myProducts) { alert('상품 목록을 불러와주세요.'); } else { const {selectedIndex} = e.target.options; // 구조분해할당 문법 const {value} = e.target.options[selectedIndex]; } }여기서 구조분해 할당 문법이 적용이 되었는데 잘 이해가 가지 않아서 질문 드립니다. 1) 구조분해 할당은 배열/객체에서 적용이 가능한 것으로 알고 있는데요, console.log(e.target.options) 를 찍어보면 Array 가 아닌 "HTMLOptionsCollection" 으로 반환이 되는데 어떻게 객체로 되어서 문법이 가능한지 궁금합니다.=> 보니까.. 첫 Prototype 에만 HTMLOptionsCollection 으로 반환이 되고, Prototype 에서 계속 타고 내려갈수록 결국 "Object" 에서 파생된거라 가능한건가요?2) option 의 value 값을 어떻게 한 번에 받아올 수가 있는지 궁금합니다. 부가 설명을 드리자면, e.target.options 를 찍으면 많은 정보들(ex. tagName, className, value 등등)이 나오는데요. 원래대로라면 e.target.options[selectedIndex].value 처럼 접근해야 값을 가져올 수 있는건데, 여기서는 const {value} = e.target.options[selectedIndex] 로 한 번에 가져오는게 궁금합니다.=> 해당 부분을 콘솔로 찍어보았을 때 아래처럼 HTML 태그를 가져오는 건 확인했습니다.<option value="life">생활용품</option>여기서 구조분해 할당 문법 적용 시 태그에 선언되어 있는 attribute 값이 자동으로 적용 이 되어 가져오는 건지, 아니면 문법적으로 뭔가 고정된 식 이 있는건지 궁금합니다.아래는 제가 const {value} = e.target.options[selectedIndex]; 코드로 적고 콘솔로 찍었을 때 반환하는 값을 테스트 해 본 결과로 공유 드립니다. <select name="category" class="select"> <option value="life">생활용품</option> <!-- "life" 반환 --> <option data-id="test">생활용품</option> <!-- "생활용품" 반환 --> <option data-id="test" value="life">생활용품</option> <!-- "life" 반환 --> </select>
- 해결됨문법 공부 다음엔, 자바스크립트 프로젝트 101
해결되지않는 부분이 있어서 질문드려요
삭제버튼도 아이콘폰트로 바꾸고 이것저것 추가해서 해봤습니다.근데 모든 작동이 다 잘되는데, 만약 5개의 목록이 있고 처음에 각 항목의 삭제버튼을 클릭할시에는 다 잘 되는데요,근데 1,2개 삭제해보고 나서 새로고침을 누른 후에는 각 항목의 삭제버튼을 클릭하면 화면상에는 제대로 되는데 로컬스토리지는 무조건 다 삭제가 됩니다. delItem 부분에서는 잘못이 있는걸까요?const form =document.querySelector('form'); const input =document.querySelector('input'); const ul = document.querySelector('ul'); const todoCount = document.querySelector('.todo-count'); const clearAll = document.querySelector('.clear-all'); let todos = []; const save = () => { localStorage.setItem('todos', JSON.stringify(todos)); }; const updateTodoCount = () => { todoCount.textContent = todos.length; }; const delItem = (event) => { const target = event.target.parentElement; todos = todos.filter((todo) => todo.id !== parseInt(target.id)); save(); target.remove(); updateTodoCount(); }; const addItem = (todo) => { if(todo.text !== ''){ const li = document.createElement('li'); const span =document.createElement('span'); const icon = document.createElement('i'); icon.classList.add('fa-solid','fa-trash-can'); span.innerText = todo.text; icon.addEventListener('click',delItem); ul.appendChild(li); li.appendChild(span); li.appendChild(icon); li.id = todo.id; updateTodoCount(); } }; const handler = (event) => { event.preventDefault(); const todo = { id: Date.now(), text: input.value, }; if((input.value) !== '') { todos.push(todo); addItem(todo) save(); input.value = ''; } }; const init = () => { const userTodos = JSON.parse(localStorage.getItem('todos')); if(userTodos){ userTodos.forEach((todo) => { addItem(todo); }); //todos = userTodos; todoCount.textContent = 0; } }; clearAll.addEventListener('click', () => { ul.innerHTML = ''; todoCount.textContent = 0; todos = []; localStorage.removeItem('todos'); }); init(); form.addEventListener('submit',handler);
- 해결됨문법 공부 다음엔, 자바스크립트 프로젝트 101
To Do LIst(응용) 질문
안녕하세요! 강의보다가 질문이 생겨 작성합니다. To Do LIst(응용) 중 삭제 기능이 있는 코드인데요.const delItem = (event) => { const target = event.target.parentElement; todos = todos.filter((todo) => todo.id !== parseInt(target.id)); save(); //remove 메소드 target.remove(); };이 코드에서 아래 코드만 삭제해보면 html 구조내 li 만 삭제되고 localStorage에선 삭제가 안되더라구요!그 이유가 todo의 아이디와 삭제 버튼이 눌린 타겟의 아이디가 같지않으면 todos 배열에 담고, 저장하기 때문이지요?(즉, 같은 아이디라면 todos 배열에 저장이 되지않음) todos = todos.filter((todo) => todo.id !== parseInt(target.id)); save();
- 해결됨문법 공부 다음엔, 자바스크립트 프로젝트 101
로컬스토리지에만 저장이 되는건?
할일앱을 다 따라해서 해봤는데요, 한가지 궁금한 점이 있어서요빈공간일때 엔터를 치면 목록에 생기지않도록 소스를 넣었었는데요,아무것도 입력하지 않고 엔터를 치면 화면상에는 빈줄이 안생기지만,application 의 로컬스토리지에는 "" 공백으로 목록이 계속 생기는데요,그걸 수정하려면 어찌 해야 하는지요?
- 해결됨문법 공부 다음엔, 자바스크립트 프로젝트 101
MIME type Error / video.paused
안녕하세요.비디오 백그라운드 실습 첫번째 예제를 하면서 발생한 에러인데(샘플 파일 비디오의 play, paused가 작동이 안됨)에러 문장으로 아무리 검색해봐도 해결이 잘 안되서 질문 드립니다. ㅠㅜ 콘솔에 뜨는 에러 문장은 아래와 같습니다.play / paused 버튼을 누르기 전에 콘솔에 뜨는 에러play / paused 버튼을 눌렀을 때 추가로 뜨는 에러<html><js>
- 해결됨문법 공부 다음엔, 자바스크립트 프로젝트 101
인터넷 사용여부
방금 프로젝트 101 신청했는데요. 혹 인터넷이 연결되야 수강이 가능한가요? 브라우저와 vs코드 통신만으로는 안되는지요.api, 임시서버 이런내용이 있던데요.
- 해결됨문법 공부 다음엔, 자바스크립트 프로젝트 101
vscode 설정
수업과 관련된 내용은 아니지만.. 저도 코드 도움말 같은 걸 빨간 글씨로 나오게 하고 싶은데요! 저렇게 나오게 하려면 어떤 설정을 해야 하나요?
- 해결됨문법 공부 다음엔, 자바스크립트 프로젝트 101
모달강의 관련 CSS 파일
안녕하세요. 모달 강의 관련 css파일(style.css)은 어디에 있을까요? github에 안올라가 있는거 같아서요