목록개발 (83)
꿈 많은 사람의 이야기
자바스크립트에선 문자열을 숫자로 변경하는게 매우 간단하다. 애시당초 변수를 선언하고 숫자를 넣으면 숫자, 문자열을 넣으면 문자열 타입으로 넣을 수 있는거 자체가 간단하긴하다. var a = 10; //숫자형 var a = "abc";//문자열 형 하지만 문자열을 숫자로 바꿀 수 있는 방법이 있다. Number() 나 parseInt()를 이용하면 된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 var x = true; Number(x); //1 x = false; Number(x); //0 x = "10"; Number(x); // 숫자 10 x = "10 20"; Number(x); //NaN(Not a Number) x = "afd"; Number(x); //N..
NaN 은 Not a Number 의 약자로 말 그대로 숫자가 아닌, 또는 될 수 없는 것들을 뜻한다. var x = 100 / "apple" 를 하게 되면 x 는 NaN이 된다. 하지만 var x = 100/"10" ; 을 하면 결과는 10이 나온다. 즉, 문자열이 숫자값으로 변환할 수 있으면 숫자로 변환해 계산을 해준다. var x = 100 / "apple" 을 하게 되면 x는 NaN 값이 나오게 되는데 이런 NaN 값을 체크 하는 것이 isNaN() 메소드이다. x를 isNaN() 메소드에 넣으면 -> isNaN(x) // true; 가 나오게 된다. 1 2 3 4 5 6 7 8 9 10 var dd =100/"Apple"; document.getElementById("demo").innerHTM..
자바스크립트 이벤트 자바스크립트에는 onclick과 같은 여러 이벤트가 있다. 다음 표를 보자 이벤트 종류 설명 onclick 해당 객체를 클릭 했을 때 이벤트 onmouseover 해당 객체에 마우스가 올라왔을때 이벤트 onmouseout 해당 객체에서 마우스가 나갔을 때 이벤트 onload 브라우저가 페이지 load를 끝냈을 때 onchange 객체가 바뀌었을 때(select 같은 태그에서) 다양한 이벤트가 있지만 대표적인 것은 이렇게 있다. 여기서 onmouseover와 onmouseenter의 차이점이 존재한다. 다음 그림을 보자. 이게 onmouseenter와 onmouseover의 큰 차이점이다. mouseenter는 해당 영역에만 적용이 되고 mouseover는 영역을 넘어서 자식에 해당되는..
매우 간단한 계산기 만들기 예제이다. 뭐 방법은 여러가지 방법이 있겠지만 본인은 본인 편한데로 했다 Title .btn{ width: 50px; height: 50px; font-size: 18pt; } #calc{ width: 150px; } input#result{ width: 150px; height: 30px; border: 1px solid blue; border-radius: 5px; } function getById(str) { return document.getElementById(str); } var result = getById('result'); var butns = getById('butns'); var arrEvent = new Array(); //배열을 생성한다. 여기에 각 아이..
object자바스크립트에는 object로 데이터를 관리할 수도 있다. name:value 값으로 데이터를 저장할 수 있다. var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"}; 위와 같이 말이다. 예제를 보자 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 var person = { firstName: "John", lastName : "Doe", id : 5566, fullName : function() { return this.firstName +" "+ this.lastName; } }; document.getElementById("demo").innerHTML = p..
자바스크립트를 이용해서 화면에 뭔가 써줄라면 document.write()를 이용하면 된다. document.write(5 + 6); 이런식으로 하면 된다. 제대로 봐보면 1 2 3 4 5 6 7 8 9 10 11 My First Web Page My First Paragraph. document.getElementById("demo").innerHTML =5+6; Colored by Color Scripter cs 와 같은 방식으로 객체에 접근을 해서 해당 HTML 을 5+6 즉 11의 값을 출력하게 해준다. innerText, innerHTML 그리고 innerText도 있는데 innerHTML 과의 차이를 한번 봐보자. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18..
인터페이스에선 추상 메소드를 빼고 디폴트 메소드도 존재한다. 디폴트 메소드는 인터페이스에서 바로 사용할 수 없고 또한, 추상 메소드가 아닌 인스턴스 메소드이므로 구현 객체가 있어야 사용할 수 있다. 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 interface RemoteControlIn { //상수 int MAX_VOLUME = 10; int MIN_VOLUME = 0; //추상 메소드 void turnOn(); void turnOff(); void setVolume(int volume); //디폴트 메소드 default void setMute(boolean mute) { if(mute) { System..
자바에서 인터페이스는 객체의 사용 방법을 정의한 타입이다. 인터페이스는 객체의 교환성을 높여주기 때문에 다형성을 구현하는 매우 중요한 역할을 한다. 이러한 인터페이스는 하나의 객체가 아니라 여러 객체들과 사용이 가능하므로 어떤 객체를 사용하느냐에 따라서 실행 내용과 리턴값이 다를 수 있다. 따라서 개발 코드 측면에서는 코드 변경 없이 실행 내용과 리턴값을 다양화 할 수 있다는 장점을 가지게 된다. 인터페이스는 ~.java 형태의 소스 파일로 작성되고 컴파일러(javac.exe)를 통해 ~.class 형태로 컴파일되기 때문에 물리적 형태는 클래스와 동일하다. 단, 소스 작성 시 선언 방법이 다르다. 인터페이스 선언은 class 키워드 대신에 interface를 넣으면 된다. interface Ri{ } 이..
객체를 직접 새성할 수 있는 클래스를 실체 클래스라고 하면 이 클래스들의 공통적인 특성을 추출해서 선언한 클래스를 추상 클래스라고 한다. 추상 클래스와 실체 클래스는 상속의 관계를 가지고 있다. 추상 클래스가 부모이고 실체 클래스가 자식으로 구현되어 실체 클래스는 추상 클래스의 모든 특성을 물려받고, 추가적인 특성을 가질 수 있다. 이 추상 클래스의 용도는 첫째, 실체 클래스들의 공통된 필드와 메소드의 이름을 통일할 목적이다. 실체 클래스를 설계하는 사람이 여러 사람일 경우 실체 클래스 마다 필드와 메소드가 제각기 다른 이름을 가질 수 있다. 이러한 케이스를 방지하기 위해 상속할 클래스를 만들어 필드와 메소드를 통일시킬 수 있다. Phone 추상 클래스를 상속하는 Telephone과 SmartPhone은..
instanceof는 객체 타입을 확인하는 연산자이다. 이 연산자는 부모 변수가 참조하는 객체가 부모 객체인지, 자식 객체인지 확인 할 수 있다. boolean result = 객체 instance of 타입 즉 좌항의 객체가 우항의 인스턴스 이면 즉, 우항의 타입으로 객체가 생성되었다면 true를 반환한다. 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 class Parent2 { } class Child2 extends Parent2 { } class InstanceofExample { public void method..