본문 바로가기

JavaScript

[javascript] !! 연산자 !!는 피연산자를 불린값으로 변환 console.log(!!0); //falseconsole.log(!!1); //trueconsole.log(!!'string'); //trueconsole.log(!!''); //falseconsole.log(!!true); //trueconsole.log(!!false); //falseconsole.log(!!null); //falseconsole.log(!!undefined) //false 더보기
[javascript] 배열요소 삭제 splice() splice(start, deleteCount)start - 배열에서 시작 위치deleteCount - start에서 지정한 시작위치부터 삭제할 요소의 수 var arr = [1, 2, 3, 4, 5];arr.splice(2,1); //2번째 요소를 시작점으로 1개 원소 삭제console.log(arr); //[1,2,4,5]console.log(arr.length); //4 더보기
[javascript] border, padding이 포함된 width구하기 document.querySelector('#width-test').offsetWidth; margin값은 포함되지 않는다. 더보기
[javascript] 대문자, 소문자 변환 toUpperCase()와 toLowerCase()를 사용하면 됩니다. var string='UPPER lower'; string=string.toUpperCase();console.log(string); //UPPER LOWER string=string.toLowerCase();console.log(string); //upper lower 더보기
[javascript] Firefox offsetX, offsetY(layerX, layerY) 상대적인 마우스 이벤트 좌표는 event객체의 offsetX, offsetY프로퍼티를 사용한다. 하지만 Firefox는 지원하지 않습니다. layerX, layerY프로퍼티를 사용하면 됩니다. var offsetX = (event.offsetX || event.layerX); 더보기
[javascript] 공백제거 1. 앞 공백제거string = string.replace(/^\s*/, ""); 2. 뒤 공백제거string = string.replace(/\s*$/, ""); 3. 앞, 뒤 공백제거string = string.replace(/(^\s*)|(\s*$)/g, ""); 4. 모든 공백 제거string = string.replace(/(\s*)/g, ""); 더보기
[javascript] JavaScript Puzzlers! http://javascript-puzzlers.herokuapp.com/ 더보기
[javascript] 중괄호 위치 자바스크립트는 세미콜론을 삽입하지 않고 행을 종료하면 자동으로 세미콜론을 추가한다. 이러한 특징때문에 문제가 발생할 수 있다. function func(){return{name:'JunHyuk'};} 위 함수가 name 프로퍼티를 가진 객체를 반환할것 같지만 자동으로 추가된 세미콜론때문에 undefined를 반환한다. function func(){return undefined;//아래 코드는 실행안된다.{name:'JunHyuk'}} 정리하자면 여는 중괄호는 명령문과 동일한 행에 두어야 한다. 더보기
[javascript] for loop 다음과 같은 for문을 최적화를 시켜 보겠다. for(var i=0; i 더보기
[javascript] 전역변수 앞에서는 변수와 관련돼서 hoisting에 대해 알아봤습니다. 이번에는 전역변수에 대해 알아보겠습니다. 전역변수, 지역변수 프로그래밍을 하는 사람이라면 기본일 것이고 설명할 것들이 있나 생각할수도 있습니다. 하지만 javascript의 특징과 주의할 점을 설명하겠습니다. 함수내에서 var를 빠뜨리고 선언하면 전역변수로 선언된다. function sun(x,y){result=x+y;//전역변수return result;} 위와같이 var를 빠뜨리고 변수를 선언하면 전역변수가 됩니다. 작동에는 문제가 없지만 함수를 호출하고 나서 전역 네임스페이스에 result변수가 남아 문제를 발생 시킬수 있습니다. 다음으로 var선언을 연속적으로 선언할 경우 생기는 문제점이 있습니다. function a(){var a=b=.. 더보기