본문 바로가기
728x90
반응형

개발일지45

javascript 콜백이 아닌 함수 콜백으로 만들기 콜백 API를 엄청나게 사용하고 있는 요즘, 아래와 같은 구조의 javascript가 있다고 가정했을 때 문제가 생긴다. function play(){ var result = A('a'); console.log(result); } function A(str){ str = B(str); return str; } function B(str){ str.callbackFunc(function(data){ str = data; }); return str; } 버튼을 누르면 play()를 동작하게 하는 함수를 짰다고 쳤을 때, play()는 A에 'a'를 인자로 하여 실행하여 result에 담은 뒤, result를 출력한다. A(str)은 단순히 B(str)을 실행해 다시 str에 넣어주고, 그 값을 리턴한다. B.. 2021. 6. 17.
[JAVASCRIPT] 유효성 체크 하는 방법 생각보다 개발을 하면서 유효성 체크를 해야하는 경우가 많습니다. 가령 jsp를 사용하는 환경에서 사용자에게 input에 입력을 받은 뒤 전송 버튼을 눌렀을 때 input값이 유효한지 검사하는 것인데요. 이럴 때는 굳이 java코드를 jsp에 넣을 필요 없이 script처리를 하면 좋습니다. 아이디 패스워드 로그인 취소 위와같은 소스가 있다고 치겠습니다. 이번에 해보려는 것은 로그인 버튼을 눌렀을 때 pwd1의 값을 확인해서 해당 값이 맞는지 틀린지 확인해서 틀렸다면 alert을 띄우는 소스를 만들려고 합니다. 이 때 스크립트에서 어떻게 처리해주면 될까요? 아이디 패스워드 로그인 취소 우선 로그인 버튼 타입을 변경합니다. 일반 버튼으로 만든 뒤 onclick 시 sbm()을 실행하도록 만들어주었습니다. v.. 2021. 6. 2.
JAVA set을 이용한 중복되지 않는 단어 출력하기 Q. 10개 이내의 단어를 입력받아 중복 제거 후 나머지 단어를 한 줄에 한 단어씩 출력하는 프로그램 작성 A. 다음과 같은 순서로 프로그램을 작성할 수 있다. 1. 사용자에게 문자를 입력받는다. 2. 받은 String을 배열에 split 하여 넣어준다. (구분자 스페이스바( 3. set을 선언한다. 4. set에 넣어준다. (이 과정에서 중복이 제거되고 첫번째로 들어간 문자만 남는다.) 5. set을 출력한다. (set 출력 시 이터레이터를 이용하면 깔끔하게 한줄씩 출력이 가능하다.) 2021. 5. 21.
JAVA StringBuilder클래스 dappend 메소드 사용하여 문자 결합하기! Q. JAVA에서 사용자로부터 문자를 계속 입력받아 결합하여 출력하는 프로그램을 만드려고 합니다. 문자 입력을 끝내려면 Ctrl + z 를 눌러야 하며, StringBuilder 클래스의 append 메소드를 이용해야 합니다. 어떻게 해야 할까요? A. 우선 간단하게 프로그램을 짜봤습니다. StringBuilder를 선언할 때 () 안에는 아무것도 넣지 않아도 됩니다. append 메소드가 있기 때문입니다. 또 문자 사이사이 공백이 들어가야하기 때문에 append 시 res에 " "를 concat 해서 추가하도록 합니다. 출력 위치도 while 문 바깥으로 빼야 합니다. 모든 입력과 출력이 끝났으면 input.close()로 input을 닫아주도록 합니다. 2021. 5. 21.
JAVA 사용자가 입력한 문자열 영문 길이 출력하기 package test.edu.semicolon; import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class main { public static void main(String[] args) { //1. 사용자로부터 문장 입력받기 Scanner scan = new Scanner(System.in); System.out.print("문장을 입력하세요 : "); String str = scan.nextLine(); //2. 알파벳만 남기기(특문 등 지우기) Pattern pat = Pattern.compile("[a-zA-Z]"); Matcher mat = pat.matcher(str.. 2021. 5. 18.
JAVA 사용자가 입력한 문자열 횟수 세기 Q. 사용자로부터 문자열을 받아서 서로 다른 단어가 몇 번이나 등장하였는지를 세는 프로그램을 작성하라. 대소문자 구별하지 않도록 한다. [실행 예] 문장을 입력하세요 : Easy come, easy go. easy 2 come 1 go 1 package test.edu.semicolon; import java.util.HashMap; import java.util.Scanner; public class main { public static void main(String[] args) { //1. 사용자로부터 문장 입력받기 Scanner scan = new Scanner(System.in); System.out.print("문장을 입력하세요 : "); String str = scan.nextLine(); .. 2021. 5. 18.
JAVA 인터페이스에 대한 모든 것 최근 JAVA 국비지원 커리큘럼을 보면 대체적으로 Spring Framework를 기반으로 배우기 때문에 MVC 패턴에 대해 배우게 됩니다. MVC 패턴이란 말 그대로 Model, View, Controller를 말하는데요. MVC 패턴에서 흐름을 보자면 Controller > Service(interface) > ServiceImpl > Dao(interface) > DaoImpl > xml 로 흘러간다고 배웠을 것입니다. 그런데 여기에서 왜 굳이 interface를 구현해야 하는지에 대해 의문을 가지고 있는 분들이 있을 것입니다. 별도로 인터페이스를 구현하지 않고 바로 Impl 단계로 가는 경우도 있습니다. 있고 없고의 차이에 대해 많이 궁금할 것입니다. 그렇다면 우선 인터페이스가 무엇이고 왜 사용하.. 2021. 5. 18.
[jQuery] 버튼을 눌렀을 때 같은 줄에 있는 데이터 가져오기 원하는 개발 방향 1. 테이블에 모든 줄에 저장 버튼이 있음 2. 저장 버튼을 눌렀을 때 해당 줄에 있는 값을 jQuery 상에서 불러와야 함 우선 해당 개발 방향대로 개발을 진행하기 위해 아래와같은 테이블을 작성하였습니다. 주소 설명 저장버튼 저장 저장 저장 이제 각 줄에 있는 저장 버튼을 눌렀을 때 해당 줄의 주소와 설명을 불러오는 jQuery를 작성해보도록 하겠습니다. $('.saveBtn').on('click', function() { //현재 row의 정보 가져오기 var thisRow = $(this).closest('tr'); //주소 input 값 가져오기 var addr = thisRow.find('td:eq(0)').find('input').val(); //섦졍 input 값 가져오기 .. 2021. 5. 17.
[오류] incompatible JVM 오류 해결하기 이클립스를 실행하려고 하니 갑자기 생겨버린 오류. 어떻게 하면 좋을지에 대해서 고민해봤다. 이클립스를 실행하기 전에 했던 행동은 eclipse market에서 editor관련 IDE Theme를 설치한 것 뿐이다. 아마 설정부분이 변경됐을 거라고 생각하며 이클립스가 깔려있는 경로로 찾아 들어가 .ini 파일을 확인해봤다. 아니나다를까 JavaVersion이 11로 되어있었다. 이 부분을 7로 변경해보았다. ㅇ여전히 에러가 발생했다. 그래서 찬찬히 고민해본 결과 내 컴퓨터에서 사용하는 버전은 1.8이니까 1.8로 해야겠다고 생각해서 수정하니 정상적으로 이클립스가 실행됐다.... 자바 버전에 대해서도 고민하는 시간을 갖게 될 줄이야...흠흠.. 2021. 5. 4.
728x90
반응형