개발 54

자바스크립트 문자열에서 숫자로 바꾸기

코딩테스트 문제에서 string형의 숫자+문자가 섞인 배열을 받아 분리하고 숫자로 이루어진 배열은 계산하라는.... 문제가 있었다... 1. 문자인지 숫자인지 확인하는 방법 => 정규식을 사용했다 2. parseFloat을 사용해서 그럴싸한 float형태과 나왔지만 typeOf를 써보니 string형태였다 => 곱하기 1을 해서 숫자로 강제형변환 시켰다. **parseInt와 parseFloat은 형변환이 목적이 아니기에 number자료형으로 안바뀐다고 한다... 나중에 알아보자 3.parseFloat(x).toFixed(소수점자릿수)를 이용해 소수점 자리수를 입력시켜줬다. const numberJ = /^[0-9]+$/; for (j = 0; j < lineOfData.length; j++) { if ..

개발 2022.05.22

Node에서 html에 CSS적용안되는 오류 해결

const express = require("express"); const app = express(); const server = app.listen(3000, () => { console.log("-----"); }); app.set("views", __dirname + "/views"); app.set("view engine", "ejs"); app.engine("html", require("ejs").renderFile); 일반적인 방법으로 link로 css파일을 연결했는데 스타일이 적용안됬다. 검색해보니 내가 해결된 방법은 1. link에서 type=text/css를 지웠다 2. 서버에 아래의 구문을 추가하였다 (views는 index.html과 style.css가 같이 있는 폴더) app.us..

개발 2022.05.21

스크립트 언어

스크립트(Script) 언어란 소스 코드를 컴파일(Compile)하지 않고도 실행할 수 있는 프로그래밍 언어를 말한다. -다른 응용 프로그램에 삽입되어서 동작하는 프로그래밍 언어이다. 예를 들어 C나 비주얼베이직, 자바같은 경우는 작성한 소스를 컴파일러를 통해 기계어 코드로 변경해야 사용자가 실행할수 있는 실행 파일이 얻어지는데 비해 스크립트 언어는 별도의 컴파일 없이 내장된 번역기에 의해 번역 되므로 바로 실행 할 수 있다. 스크립트 언어는 소스를 작성한 후 컴파일 과정 없이 바로 실행하여 결과를 확인할 수 있다는 장점이 있는 반면에 번역 과정을 거쳐야 하기 때문에 다소 느리다는 단점이 있다. C언어나 Java와 같은 비스크립트 언어의 경우 실행 속도가 빠른 장점이 있는 반면 컴파일 과정을 거쳐야 하는..

개발 2022.05.19

자바스크립트 변수 선언의 특징

특징 "변수 호이스팅" , 변수를 어디서 선언을 하든 변수 선언이 맨 앞으로 간다 변수 선언의 범위 var 를 사용해 선언된 변수는 가장 가까운 함수 범위를 갖는다 let 을 사용해 선언된 변수는 가장 가까운 블록범위를 갖는다 (즉 { } 내에서 사용가능하다) function scope2(print){ if(print){ var insideIf = '12'; } console.log(insideIf); } scope2(true); //'12'가 출력된다 function scope3(print){ if(print){ let insideIf = '12'; } console.log(insideIf); } scope3(true); //오류 발생 !!! **자바에서는 If 내부에 선언된 변수는 외부에서 사용할 수..

동적언어와 정적언어

동적언어 : 인터프리터가 프로그램을 번역하지 않고 그대로 실행하는데, 프로그램에서 변수가 사용될 때마다 자료유형을 점검하여 필요한 작업을 수행하면서 실행한다. 예) 코틀린,자바스크립트,루비, 파이썬 등 => 동적언어의 자료형은 실행 시 결정된다. 정적언어 : 타입(자료형)을 컴파일 할 때 결정하는 것 예) C C# 자바등의 언어가 여기 속한다 => 메소드 호출이 빠르다 오류가 생길 활률이 줄어든다 => 코드에서 다루는 객체가 어떤 타입인지 알 수 있어서 가독성이 좋다

개발 2022.05.18

빅오표기법

빅오 표기법은 알고리즘의 최악의 경우 복잡도를 측정한다. 알고리즘 분석의 목표는 빅오표기법을 통한 시간과 공간의 복잡성을 계산함으로써 알고리즘의 효율성을 이해하는 것이다. O(1) : 입력공간에 대해 변하지 않는다. O(n) : 선형시간, 최악의 경우 n번의 연산을 수행해야 하는 알고리즘 적용된다. f(n) : 알고리즘의 시간의 복잡도 n : 입력의 개수 f(n)time : 필요한시간 f(n)space : 필요한공간(추가적인메모리) f(n)에 관해 계산하는데 도움이 되는 기본적인 규칙 1. 계수 법칙 2. 합의 법칙 3. 곱의 법칙 4. 전이 법칙 5. 다항 법칙

개발/알고리즘 2022.05.18

자바스크립트 배열의 크기 변경

자바스크립트의 배열의 큰 특징은 배열의 크기를 임의로 변경 가능하다는 것이다 var arr = [ 1234, 'test' , true ]; //배열의 크기를 임의로 변경 (3->5) //arr[3],arr[4]는 값이 할당되지 않았기 때문에 undefined arr.length=5; //새로운 배열을 추가하면 크기는 자동으로 변경 (5->6) arr[5]='apple'; //새로운 배열을 추가하면 크기 변경 (6->7) arr.push('banana'); for (var i=0; i