JavaScript 8

[js] 최대 공약수, 최소공배수 구하기 (feat. 유클리드 호제법)

공약수는 두 개 이상의 자연수의 공통된 약수이고, 공약수 중에서 가장 큰 공약수를 바로 최대공약수라 하고, 두 수의 공약수가 1밖에 없을 때 이 두 수를 서로소라고 한다. 12와 18의 최대공약수는? 12의 약수: 1, 2, 3, 4, 6, 12 18의 약수: 1, 2, 3, 6, 9, 18 두 수의 공약수는 1, 2, 3, 6이고 이 중 가장 큰 공약수, 최대공약수가 6 유클리드 호제법을 이용한 풀이 - a, b 를 서로 나눌때, 나누어진다면 b가 최대 공약수 이다. (a>b) - 만약 a,b가 나누어지지 않으면 b와 a를 b로 나눈 나머지를 다시 나눈다 - 서로가 나누어지면 a%b 가 최대공약수이다. 나누어지지 않는다면 위처럼 b와 a를 b를 나눈 나머지를 다시 나눈다. const solutuon =..

자바스크립트 기본 구성 요소

자바스크립트 기능 : 기본적인 객체와 데이터 유형으로 구분한다. 문자열, 숫자, 불리언 데이터유형은 문자열, 숫자, 불리언과 연관된 기능을 제공한다. 내장 RegExp, 날짜(Date), Math객체는 각각 정규표현식, 날짜, 필수적인 수학 연산과 같은 기본 기능을 제공 자바스크립트의 기본적인 구성 요소는 시간이 지나면서 변했다. 자바스크립트 객체(object), 원시(primitive), 리터럴(literal) 구분 자바스크립트 리털럴은 인용 문자열(String), 부동 소수점수(Number), 불리언(Boolean)과 같은 특정한 형식의 값을 나타냄. 자바스크립트 원시(primitive)는 데이터 유형의 인스턴스를 나타내며 문자열, 숫자, 불리언, null, undefined 등 다섯 가지 형식이 있..

Frontend/Javascript 2021.04.28

스타일 내기위한 자바스크립트

화면을 구성할때 스타일 내기위해 자주사용하는 자바스크립트를 정리해보려고 한다. 1. 부모의 자식요소 갯수를 구해 스타일로 분기처리 할때 - 부모에 아이디값을 셀렉 후 자식요소의 length를 구한다. - classList를 사용해 부모에 클라스를 추가해 스타일을 조건에 따라 활성화한다. var listOrder = document.getElementById('listOrder'); var nodelist = listOrder.getElementsByTagName('li').length; if(nodelist < 16){ listOrder.classList.add('few') } else{ listOrder.classList.add('many') } 2. 스크롤 헤더 sticky 효과 - 부모에 아이디값을..

Frontend/Javascript 2021.02.28

JavaScript / Object / Element.setAttribute() / 요소의 속성 값을 정하는 메서드

.setAttribute() .setAttribute()는 선택한 요소(element)의 속성(attribute) 값을 정한다. element.setAttribute( 'attributename', 'attributevalue' ) attributename에는 속성 이름을, attributevalue에는 속성값을 넣습니다. document.getElementById( 'xyz' ).setAttribute( 'title', 'This is title' ) ▶ id 값이 xyz인 요소의 title 속성을 This is title로 정합니다. 만약 이미 속성값이 존재한다면 그 값을 지우고 새 값을 적용합니다. CODING FACTORY ▶ id 값이 abc인 요소의 href 속성값을 변경하는 예제입니다. fu..

Frontend/Javascript 2020.11.03

메뉴 아코디언 표현하기

여러가지 아코디언액션을 적용하는 방법이 잇는데 CSS 클래스로 컨트롤 하는 방식이 가장 좋은 방법인 것 같다. [html] onclick="toggleClass( this.parentNode, 'fold')" 클릭시 부모에 fold라는 클래스를 토글하고 싶을때 (추가/제거) this에 parentNode 붙여준다. [vanilla javascript] // 아코디언 var toggleClass = function (element, tClass) { tClass = tClass.replace(/\s/g, ""); var classes = element.className; element.className = classes.indexOf(tClass) !== -1 ? classes.replace(" " + t..

Frontend/Javascript 2019.02.11

Array.prototype.slice.call 이해하기

Array.prototype.slice.call 이해하기 우선,slice() 메서드는 어떤 배열의 begin부터 end까지(end 미포함)에 대한 얕은 복사본을 새로운 배열객체로 반환한다. (원본 배열은 수정되지 않는다.)Array는 new Array()에서 새 배열을 만드는 객체이다. Array는 프로토타입에 모든 원시 배열 메서드가 있는 객체.이러한 새로운 배열에는 slice와 같은 메서드와 속성이 전달되며, 이러한 메서드는 [Class].prototype 개체에 저장된다. var arr = new Array(); Array으로 인스턴스를 만든다. 이것은 기본적으로 arr 객체가 프로토타입 체인에 Array의 프로토타입을 추가한다는 것을 의미한다. 인스턴스를 만드는 대신 Array 프로토타입에서 's..

Frontend/Javascript 2018.12.18

Node.js File System Module

Node.js as a File Server Node.js file system module을 사용하면 컴퓨터의 파일 시스템을 사용하여 작업 할 수 있다. 파일 시스템 모듈을 포함하려면 require() 을 사용할 것. var fs = require('fs'); - fs는 file system의 약자 파일 시스템 모듈의 일반적인 사용 : 파일 읽기 파일 만들기 파일 업데이트 파일 삭제 파일 이름 바꾸기 [파일 읽기] fs.readFile()방법은 컴퓨터 파일을 읽는데 사용된다. Node.js와 같은 폴더에 HTML 예시 demofile.html My Header My paragraph. HTML 파일을 읽고, 내용을 반환하는 Node.js 파일 만들기 var http = require('http');va..

Frontend/Node.js 2018.12.13