자바스크립트는 데이터타입(자료형)에 대해 상당히 관대한 언어이다. 다른 언어가 변수를 선언 할 때 자료형까지 결정 하는 반면, 자바스크립트는 선언시 변수의 스코프(범위)와 존재만 설정하고, 할당 할 때 비로소 자료형이 결정된다.(다른 언어를 했었는지 어떤 개발자가 변수를 선언하고 초기화를 하지 않으면쓰레기 값이 된다고 하는 것을 보았는데, 자바스크립트에 대해 잘 모르고서 하는 소리인것 같다.) 그래서인지, 자바스크립트를 배우는 대부분의 사람들은, 그리고 가르치는 사람들은자료형에 대한 고민을 거의 하지 않는 편이다. 고려하지 않아도프로그래밍을 하는데 큰 문제가 없다(?)고 생각하는 것이다. 하지만 조금만 깊이있게 들어가면 자바스크립트도, 자료형에 대한 고민을 하지 않고서는문제가 발생하는 경우가 많다. 그 ..
그냥 아무런 조치없이 저장하고 조회하게되면줄바꿈이 안먹히고 한줄로 조회가 된다. 그걸해결하기위해 저장할때는 이렇게 정규식을 이용해 줄바꿈을 태그로 바꾸고 저장. $('#text').val().replace(/\n/g, " ") 그런데 이렇게 하면 생기는 문제가 일반 조회시에는 정상적으로 줄바꿈으로 보이는데그걸 수정하는 페이지로 넘어가면 줄바꿈이 아니라 이 그대로 노출됨. 수정페이지로 갈때는 재조회시 컨트롤러에서 조회된 값을 text = text.replaceAll(" ", "\r\n");이런식으로 고침.저장할대 태그로 들어갔던걸 다시 자바에서 엔터로 인식하는 값으로 바꾸는거임.
자바스크립트로 페이지 이동을 할땐 location 객체를 이용한다.location 객체에서도 변수(속성)와 메서드를 이용해서 이동하는 법이있는데 location.href 와 location.replace() 이다. 사용법은 다음과 같다location.href = "www.naver.com";location.replace("www.naver.com"); 이둘은 큰 차이점이 있는데href는 페이지 자체를 이동시킨다.대표적으로 확인할수 있는법이 브라우저의 뒤로 버튼을 이용하는것인데페이지 자체를 이동한 것이므로 뒤로 버튼을 누르면 이전페이지로 이동한다. replace()는 이동이 아니라 현 페이지위에 새주소의 화면을 덮어씌우는것이다.그냥 화면에 나오는건 둘다 똑같이 naver로 이동했겠지만 replace()는 ..
보통은 공부나 개발하다가 모르는게있고 신기한게있으면 찾아보고 검색해보면서 배워나가는데 이상하게 style 속성쪽 CSS는 하다가 막혀도 궁금하지도않고 웬만하면 접하고싶지가 않다. 이번에도 그냥 출력되는대로 쓰고싶었는데 고정시키라고 하셔서 어쩔수없이 접하게됨 ㅜ HTML 내에서 width 속성을 지정해놨더라도 DB에서 불러오는 값의 크기가 커서 경계선이 무너지는 경우가 종종있다.경계선이 무너져서 1줄에 출력되야하는 다른 것들까지 2줄출력이 되어 디자인이 깨지는 현상이 발생하는데 그럴땐 word-break를 사용하면 된다. 단어단위로 줄바꿈이 된다. 단어고 뭐고 그냥 할당된 크기의 화면만큼 꽉 채우면 다음줄로 줄바꿈을 한다. normal이랑 차이점을 잘 모르겠다. 줄바꿈 안하고 한줄로 출력
웹 프로그래밍을 하다보면 동적으로 태그를 추가 시키는 경우가 있다 가령 이런식으로 태그를 추가하는것인데 평소에 종종 사용해오다가 이번에 추가되는 input 태그에 각각 datepicker를 지정하는 것을 하게되었다.처음에 사용한 방법은 기존 방법과 똑같이 하는것이었는데 그러다보니 추가되는 태그마다 고유속성인 id가 똑같게 지정되고, 그러다보니 제일 처음 생성된 태그에만 datepicker 속성이 지정되고 2번째 생성태그부터는 지정이 안되는 현상이 발생했다. 그래서 getElementsByName()이나 $("[name='test']") 이런 방법, 혹은 생성태그에 class속성을 지정해서 그것을 불러와서 사용하는 법을 검색으로 찾아냈고 적용해봤는데연속된 태그 모두 datepicker 속성이 적용되긴했으나..
function delRow(){var table = document.getElementById("reqList");var rowCnt = table.rows.length; for(var i = 0; i < rowCnt; i++){var row = table.rows[i];var chkBox = row.cells[0].childNodes[0]; if(chkBox != null && chkBox.checked == true){table.deleteRow(i);rowCnt--;i--;}}}
한글 제거하는 정규식/^[A-Za-z][A-Za-z0-9]*$/
window.open() 함수로 띄운 팝업 창에서 부모창의 변수나 함수를 사용하기 위해선 opener를 사용하면 된다.opener는 부모를 지칭하는 객체(?)이고 opener.을 이용해서 부모의 함수에 접근가능. 아래의 예제는 자식창에서 무언가 값을 클릭할 순간 sendChildValue() 함수가 작동되는 코드이다. -자식창에서 얻은값 부모창에 입력하기 부모창함수 function setChildValue(name){ document.getElementById("값 넣을곳 id").value = name; } 자식창함수 function sendChildValue(name){ opener.setChildValue(name); window.close(); } 넣을값구하기(자식창) ${users.name}
- Total
- Today
- Yesterday
- JavaScript Core
- mariadb
- servlet
- Kotlin
- java
- javascript
- toby
- JPA
- Git
- spring cloud
- Design Pattern
- OOP
- 정규표현식
- clean code
- frontcode
- DesignPattern
- MySQL
- code
- EffectiveJava
- java8
- generics
- Spring
- backend개발환경
- http
- programming
- db
- frontend개발환경
- Jackson
- go-core
- TEST
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |