묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
이렇게 풀어도 괜찮을까요?
function solution(n, arr) { let new_arr = []; let new_new_arr = []; arr.map((item) => { new_arr.push([...item.toString()].reduce((sum, value) => (sum += 1 * value), 0)); }); let max_num = [...new_arr].sort((a, b) => a - b)[new_arr.length - 1]; for (let i = 0; i < arr.length; i++) { if (new_arr[i] === max_num) { new_new_arr.push(arr[i]); } } return new_new_arr.sort((a, b) => a - b)[new_new_arr.length - 1]; } let arr = [128, 460, 603, 40, 521, 137, 123]; console.log(solution(7, arr));
-
미해결인터랙티브 웹 개발 제대로 시작하기
new 키워드의 역할
강사님! 함수를 생성자 함수로서 실행을 하고 생성자 함수의 this에 개별 객체를 바인딩 하기 위해서 new 키워드를 쓰는것으로 이해를 했는데 제가 이해한게 맞나요?
-
해결됨문법 공부 다음엔, 자바스크립트 프로젝트 101
인터넷 사용여부
방금 프로젝트 101 신청했는데요. 혹 인터넷이 연결되야 수강이 가능한가요? 브라우저와 vs코드 통신만으로는 안되는지요.api, 임시서버 이런내용이 있던데요.
-
미해결Vue.js 시작하기 - Age of Vue.js
학생할인 코드
학생할인코드 적용하여, 다른 강의도 들으려고 했는 데,이미 초과된 분량이라고 적용이 안되어서, 그냥 정가에 샀는 데, 할인 기간이 혹시 끝난걸까요?
-
해결됨[코드캠프] 입문자를 위한 Javascript 알고리즘 이론+실습
각 문제별 제한 사항에 대해 궁금한점이 있습니다~
각 문제에 보면 제한사항에 birth는 6자리의 숫자로 제공됩니다.date는 4자리의 숫자로 제공됩니다.이런 사항들이 있는데요!이런것들은 if문으로 걸러주지 않아도 되는지 궁금합니다!
-
미해결타입스크립트 입문 - 기초부터 실전까지
해당 인터페이스는 키값이 computed property name인건가요?
interface PhoneNumberDictionary { [asdasd: string]: { num: number; }; } 원래는 [phone: string]인데 위처럼 phone에 해당하는 텍스트 값을 임의로 asdasd 이런식으로 해도 동작하더라구요 ES6의 computed property name인 것 같기도 하면서 또 아닌 것 같기도 한데 저게 뭔지 잘 모르겠습니다. computed property name인가요?
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
코드 리뷰 부탁드립니다
const solution = (m, songs) => { let lt = Math.max(...songs), rt = songs.reduce((prev, cur) => prev + cur); let mid = parseInt((lt + rt) / 2); let nowCount; let minMinutes = Number.MAX_SAFE_INTEGER; const getCount = (minutes, songs) => { let count = 0; let remainMinutes = 0; for (let song of songs) { if (remainMinutes < song) { count++; remainMinutes = minutes - song; } else { remainMinutes -= song; } } return count; }; while (lt <= rt) { nowCount = getCount(mid, songs); console.log(mid, nowCount, minMinutes); if (nowCount > m) { lt = mid + 1; } else { rt = mid - 1; // if (nowCount === m) minMinutes = Math.min(minMinutes, mid); minMinutes = mid; } mid = parseInt((lt + rt) / 2); } return minMinutes; };먼저 getCount 부분을 다르게 작성해봤는데 반례가 있을지 궁금합니다.그리고 제 원래 코드는 while문 내에서 구한 nowCount값이 m과 같을 때만 minMinutes(정답)을 minMinutes와 mid 중 더 작은 값으로 대입해줬는데, nowCount가 m보다 작거나 같은 경우에 무조건 정답으로 대입해도 괜찮은 이유가 무엇인가요?
-
미해결인터랙티브 웹 개발 제대로 시작하기
질문있습니다!
3개의문 2 강의 중에서 일분이 이미지를 가릴 때 transition을 사용하셔서 처음 위치에서 오른쪽으로 100% 이동을 시키셨잖아요?그 때 처음 두개의 문에 있던 일분이는 문 뒤에 가혀 보이지 않게 되었는데 세번째 문에 있던 일분이는 <div class = 'stage'> </div> 위에 보였습니다.그렇다면 처음 두개 문에 있던 일분이는 이동한 후에 레이어 상에서 이웃한 문 뒤에 위치해서 보이지 않는건가요?
-
미해결인터랙티브 웹 개발 제대로 시작하기
이미지를 넣을 때 div 안에 background-img를 넣으시는이유
저는 어떤 이미지를 넣을 때 바로 img 태그를 이용해 넣을거같은데 강사님은 항상 div 태그 안에 background-img를 넣으시더라구요 혹시 그렇게 하시는 이유가 따로 있으신가요? 궁금합니닷!
-
미해결Do It! 장고+부트스트랩: 파이썬 웹개발의 정석
crispy적용오류
아래랑 똑같은 상황인데 어떻게 해야하나요?https://www.inflearn.com/questions/802016/django-crispy-%EC%A0%81%EC%9A%A9-%EC%98%A4%EB%A5%98
-
미해결Vue.js 끝장내기 - 실무에 필요한 모든 것
nom update check failed는 어떠한 이유로 뜨는 것인 지 궁금합니다.
안녕하세요 선생님 덕분에 강의 잘 수강하고 있습니다.다름이 아니라 back-end project를 실행하는데npm run dev 를 실행하면 정상적으로 서버도 돌아가고 /api/docs 경로도 잘 조회가 됩니다. 다만 저 경고문구는 왜 뜨는지 궁금합니다..!
-
해결됨[NarP Series] MVC 프레임워크는 내 손에 [나프2탄]
이클립스에서 javascript 람다 사용이 가능한가요??
안녕하세요. 11분 15초 쯤부터 Javascript의 람다식을 사용하면 된다고 말씀해주셨습니다. $(document).ready(function() { $("#regBtn").click(()=> { location.href="<c:out value='/register.do'/>"; }); });이클립스에서 ES6 문법 사용이 가능한가요???람다식은 ES6부터 나온 기능으로 알고 있습니다. 이와 같은 버전에 나온 백틱(`)을 사용하려고 했는데, 이클립스에서 에러 표시를 내서 사용을 안 하고 있었습니다.19년 3월 버전의 이클립스 환경에서 보면, Legacy 프로젝트를 생성했는데 ECMA 3 Browser Support Library라고 되어있길래 ES6은 지원이 안 되나 싶었습니다.(다시 보니 ECMA Script가 아니라 ECMA 3 Browser네요 ㅎㅎ; 제가 잘못 예측한 것일 수도 있겠네요)이클립스에서 ES6 버전의 JS를 쓰면 Ajax 결과로 나오는 흔한 JSON 데이터를 편하게 불러올 수 있을텐데 말이죠 ㅠㅠ항상 친절한 답변 감사합니다. 강의 잘 보고 있습니다.
-
해결됨[코드캠프] 입문자를 위한 Javascript 알고리즘 이론+실습
계산기가 이상해, typeof 풀이 문의
섹션 3. 숫자와 문자열 > typeof [🧮 계산기가 이상해]function solution(num1, num2) { return typeof(num1), typeof(num2);}저는 이렇게 풀었는데요!리턴값은 똑같은데 혹시 이렇게 풀면 안 되는 걸까요?아시는 분, 꼭 답변부탁드립니다♥
-
미해결타입스크립트 입문 - 기초부터 실전까지
정의된 타입으로 타입을 제한하기 질문 드립니다.
선생님, 안녕하세요. 강의 잘 듣고 있습니다.궁금한 것이 두 가지가 생겨서 질문하려고 합니다.dropdown 예제에서 DropdownItem의 value가 어떤 타입이든 들어올 수 있어서 toString()에 밑줄이 그어지는 것으로 알고 있는데요,이를 해결하기 위해a. DropdownItem<T>에서 T를 string과 number로 제한해야 되는 것인지, 아니면b. 강의 예제처럼 toString()에 타입을 제한하는 것인지 모르겠습니다.위의 두 사진에서 보면 34번째 줄에 selectTag에 에러가 뜨는데요, 이유가 궁금합니다.감사합니다.
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
UpdateValuesMissingError
import { Injectable } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm/repository/Repository'; import { User } from '../users/entities/user.entity'; import { Payment, POINT_TRANSACTION_STATUS_ENUM, } from './entities/payment.entity'; @Injectable() export class PaymentService { constructor( @InjectRepository(Payment) private readonly paymentRepository: Repository<Payment>, @InjectRepository(User) private readonly userRepository: Repository<User>, ) {} async create({ impUid, amount, currentUser }) { const pointTransaction = await this.paymentRepository.create({ impUid, amount, user: currentUser, status: POINT_TRANSACTION_STATUS_ENUM.PAYMENT, }); await this.paymentRepository.save(pointTransaction); const user = await this.userRepository.findOne({ id: currentUser.id }); console.log(amount); await this.userRepository.update( { id: user.id }, // where { point: user.point + amount }, ); return pointTransaction; } } payment 과제 중 payment.service.ts 코드입니다.결제는 문제없이 처리가 되었고, payment 테이블에 거래기록이 저장되어야 하는데 이러한 에러가 발생합니다.[Nest] 288 - 03/29/2023, 7:34:01 AM ERROR [ExceptionsHandler] Cannot perform update query because update values are not defined. Call "qb.set(...)" method to specify updated values. 여러 시도를 해봤지만 해결되지 않아 커뮤니티에 글 남깁니다!
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
입력 값과 시간 복잡도 관해서 여쭙습니다!
다름이 아니라 이 입력값 N이 30인 경우,연산에 매우 오랜시간이 걸리더라구요!2중 반복문을 사용해서 구하는게 시간 복잡도상 이상적인 것인가요?아니면 DP를 사용하는 방법을 고려해야 되는건가여??
-
미해결몇 줄로 끝내는 인터랙티브 웹 개발 노하우 [초급편]
코드가 미리보기로 보여주는 확장프로그램이 뭔가요?
코드가 미리보기로 보여주는 확장프로그램이 뭔가요?
-
미해결
socket.io 실행
안녕하세요채팅을 구현하기위해 socket.io를 썼는데 통신이 안되는 것같습니다 io에 주소를 제대로 넣었고 서버 on 마다 클라이언트에서 emit으로 작성했는데 작동하지 않습니다 이유가 무엇일까요? // server 파일의 코드입니다 require('dotenv').config(); const { createApp } = require('./app'); const { appDataSource } = require('./models/index'); const startServer = async () => { const app = createApp(); const PORT = process.env.PORT; await appDataSource .initialize() .then(() => { const server = app.listen(PORT, () => { console.log(`🟢server is listening on ${PORT}🟢`); }); const io = require('socket.io')(server, { cors: { origin: true, credentials: true, }, }); const { socketMessage } = require('./middlewares/socket.io'); socketMessage(io); }) .catch((err) => { console.log(`❌Failed server connect❌`); appDataSource.destroy(); }); }; startServer(); // server의 socket 파일의 코드입니다 const jwt = require('jsonwebtoken'); const chatDao = require('../models/chatDao'); const { catchAsync } = require('../utils/error'); const socketMessage = (io) => { io.use((socket, next) => { const token = socket.handshake.headers.authorization; if (!token) { return next(new Error('Authentication error')); } jwt.verify(token, process.env.SECRET_KEY, async (err, decoded) => { if (err) { return next(new Error('Authentication error')); } userId = decoded.userId; next(); }); }); io.on('connection', (socket) => { console.log('A User Connected.'); socket.on( 'create_room', catchAsync(async (postId, callback) => { const room = await chatDao.createRoom(userId, postId); socket.join(room.raw.insertId); callback(room.raw.insertId); }) ); socket.on( 'enter_room', catchAsync(async (roomId, callback) => { socket.join(roomId); callback(roomId); }) ); socket.on('new_text', async (content, roomId, callback) => { await chatDao.createChat(userId, content, roomId); socket.to(roomId).emit('new_text', content); callback(content); }); socket.on('disconnect', () => { console.log('접속이 해제되었습니다', socket.id); clearInterval(socket.interval); }); socket.on('error', (error) => { console.error(error); }); socket.on('send', (data) => { console.log(data); socket.emit('reply', { data, }); }); socket.interval = setInterval(() => { socket.emit('news', 'Hello Socket.IO'); }, process.env.SOCKET_INTERVAL || 1000); }); }; module.exports = { socketMessage }; // client 코드입니다import React, { useState, useContext } from 'react'; import io from 'socket.io-client'; import './chat.css'; import { MenuContext } from '../../components/Nav/MenuProvider'; const Token = localStorage.getItem('accessToken'); const socket = io.connect('http://192.168.0.194:4000', { withCredentials: true, extraHeaders: {Authorization: `Bearer ${Token}` } appDataSource.destroy(); }), }); socket.on('connection', () => { console.log('Connected to server'); }); const Chat = () => { const [roomId, setRoomId] = useState([]); const [searchData, setSearchData] = useContext(MenuContext); const handleCreateRoom = event => { event.preventDefault(); socket.emit('create_room', searchData, ({ searchData, roomId }) => { console.log(`Joined room ${roomId}`); setRoomId(roomId); }); }; const handleJoinRoom = roomId => { socket.emit('enter_room', roomId, roomId => { console.log(`Joined room ${roomId}`); setRoomId(roomId); }); }; const handleNewText = content => { socket.emit('new_text', content, roomId, content => { console.log(`Sent message: ${content}`); }); }; const handleNewText = content => { socket.emit('new_text', content, roomId, content => { console.log(`Sent message: ${content}`); }); }; const onCheckEnter = e => {if (e.key === 'Enter') { handleNewText(); } }; return ( <div className="h-screen pt-36"> <button onClick={handleCreateRoom}>테스트</button> <button onClick={() => handleJoinRoom(roomId)}>테스트2</button> <input id="input-text" type="text" onKeyDown={onCheckEnter} /> <button onClick={handleCreateRoom}>제출</button> </div> ); }; export default Chat;
-
해결됨[코드캠프] 시작은 프리캠프
회원가입 과제 질문
선생님 강의 잘 보고 있습니다. 다름이 아니라 몇 가지 여쭤보고 싶어 글을 올리게 되었습니다. 정답코드를 따로 볼 수 있는 곳이 있을까요?제 위의 코드에서 문제점이 있을까요?button 기능이 활성화 되지 않는데 이유가 무엇인지 잘 모르겠습니다.<!DOCTYPE html> <html lang="ko"> <head> <title>Upgrade_sign_up_page</title> <style> #signup{ width: 1920px; height:1080px; background-color: #FFFFFF; /* border:1px solid red; */ display: flex; flex-direction: row; justify-content: center; align-items: center; } .main{ box-sizing: border-box; width : 670px; height : 960px; border : 1px solid #AACDFF; padding : 60px; box-shadow: 7px 7px 39px rgba(0,104,255,0.25); border-radius: 20px; display: flex; justify-content: center; } .main2{ width: 470px; height: 818px; /* border: 1px solid green; */ display : flex; flex-direction: column; align-items: center; } #introduce{ width: 466px; height: 94px; font-family: 'Noto Sans CJK KR'; font-style: normal; font-weight: 700; font-size: 32px; line-height: 47px; color : #0068FF } #group1{ width: 466px; height: 80px; /* border: 1px solid red; */ } #email{ width: 158px; height: 23.65px; font-family: 'Noto Sans CJK KR'; font-style: normal; font-weight: 400; font-size: 16px; line-height: 24px; color :#797979; } #vector1{ width: 466px; height: 0px; border: 1px solid #0068FF; } #sex{ width: 140px; height: 23.94px; display: flex; justify-content: space-between; font-family: 'Noto Sans CJK KR'; font-style: normal; font-weight: 400; font-size: 16px; line-height: 24px; color : #000000 /* border:1px solid #0068FF */ } #checkbox{ width: 454px; height: 21.06px; font-family: 'Noto Sans CJK KR'; font-style: normal; font-size: 13px; line-height: 21px; color : #000000 } #line{ width: 470px; height: 1px; background-color: #E6E6E6; } button{ width: 470px; height: 75px; background-color: #FFFFFF; border: 1px solid #0068FF; border-radius: 10px; display: flex; align-items: center; justify-content: center; } #button_text{ width: 70px; height: 27px; font-family: 'Noto Sans CJK KR'; font-style: normal; font-weight: 400; font-size: 17px; line-height: 27px; text-align: center; color : #0068FF } </style> </head> <body> <div id = "signup"> <div class = "main"> <div class = "main2"> <div id = "introduce"> 회원 가입을 위해<br>정보를 입력해주세요 </div> <br> <div id = "group1"> <div id = "email"> *이메일 </div> <input type ="text" style="border: none; width:200px;height: 50px;font-size: 30px;"> <div id = "vector1"></div> </div> <br> <div id = "group1"> <div id = "email"> *이름 </div> <input type ="text" style="border: none; width:200px;height: 50px;font-size: 30px;"> <div id = "vector1"></div> </div> <br> <div id = "group1"> <div id = "email"> *비밀번호 </div> <input type ="password" style="border: none; width:200px;height: 50px;font-size: 30px;"> <div id = "vector1"></div> </div> <br> <div id = "group1"> <div id = "email"> *비밀번호확인 </div> <input type ="password" style="border: none; width:200px;height: 50px;font-size: 30px;"> <div id = "vector1"></div> </div> <br><br> <div id = "sex"> <div> <input type = "radio" name = "gender">여성 </div> <div> <input type = "radio" name = "gender">남성 </div> </div> <br><br> <div id ="checkbox"> <input type = "checkbox"> 이용약관 개인정보 수집 및 이용, 마케팅 활용 선택에 모두 동의합니다. </div> <br><br> <div id = "line"></div> <br><br> <button> <div id = "button_text"> 가입하기 </div> </button> </div> </div> </div> </body> </html>
-
미해결Do It! 장고+부트스트랩: 파이썬 웹개발의 정석
admin페이지에서 로그인이 안됩니다
예전에 로그인 됐었는데 로그아웃하고 다시 하려고 했더니 로그인이 안됩니다..