태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

javascript의 relaceAll 을 대체할만한 split 와 join

javascript 의 relaceAll 메서드는 정규식을 이용한 치환밖에 되지 않는다. 보통 문자 치환은 String대 String 으로 하는데, 정규식을 이용해야하는 relaseAll 메서드를 이용할수 없다. 그래서 여러 개발자들은 해당 문자가 있는지 여부를 조사하는 indexOf메서드를 사용해 루프문을 돌아 relace시키는 function 을 만들어 사용한다.

하지만, replaceAll을 대체할만한 아래 아주 기발한 아이디어 하나가 있다. 별다른 펑션을 만들지 않고도 아래 한줄이면 간단히 구현된다.

spilt이라는 메서드는 "OLDSTRING"이라는 구분자로 구분해 Array변수로 변환한다. 그리고 다시 join이라는 메서드로 "NEWSTRING"이라는 구분자를 생성해 하나의 String으로 변환한다.

참재미있지 아니한가~ :)

javascript로 브라우저 중앙에 레이어 뛰우기

아래는 브라우저 중앙에 div 구조로된 레이어를 뛰울때, 좌표값을 구하는 방법이다.


document.documentElement.clientWidth : 현재 브라우저의 document 넓이를 반환.

300 : 뛰울 레이어의 가로 사이즈.

document.documentElement.scrollLeft : 브라우저의 document의 스크롤이 이동한 넓이.


※ 전체 크기에서 레이어 사이즈를 뺀것을 반으로 나누고, 스크롤 한 길이만큼을 더해준것이다.

document.body 대신에 document.documentElement 를 사용한 이유는 DTD 타입을 선언한 페이지에서는 document.body 의 값을 내뱉지 못한다. body에서 얻지 못한값은  documentElement 로 얻을수 있다.