목록전체 글 (50)
재훈재훈
/*SMS 문자 전송 화면 구성 ver.2- 화면 상단에 텍스트 입력 상자, 아래쪽에 전송, 취소 버튼 위치- 텍스트 입력상자 밑에 '00/00 바이트' 표시하여 바이트 수 제한하기- 전송 버튼 누를 시 토스트로 글자 내용 알림- 취소 버튼 누를 시 앱 종료- 한글이 3바이트로 읽히는 문제 해결 - 2바이트로 읽힘*/ MainActivity.java (xml 파일은 지난 번과 동일) public class MainActivity extends AppCompatActivity { EditText editText; // 메세지 입력 뷰 TextView textView; // 작성 글자 수 나타내는 뷰 Button button; // 작성 버튼 @Override protected void onCreate(Bu..
/*SMS 문자 전송 화면 구성- 화면 상단에 텍스트 입력 상자, 아래쪽에 전송, 취소 버튼 위치- 텍스트 입력상자 밑에 '00/00 바이트' 표시하여 바이트수 제한(아직 미완성, 바이트 대신 글자 수 제한 - 표시는 아직 바이트로ㅠㅠ) - 전송 버튼 누를 시 토스트로 글자 내용 알림- 취소 버튼 누를 시 앱 종료*/ MainActivity.javapackage com.tistory.uluroo.doitmission04; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.text.Editable; import android.text.InputFilter; import android.text.Te..
자바스크립트를 공부하기 전에 '자바스크립트는 자바와아무 관련 없는 완전히 다른 언어이다' 라는 말을 들은 적이 많았다.그러나 공부하다 보니 같은 객체지향언어라는 공통점이 있고,비슷한 개념들이 서로 통용되는 경우가 많다.오히려 이런 점들이 나한테는 자바스크립트를 공부함에 있어서 방해가 된다.자바보다 좀 더 자유분방한 객체지향언어라는 느낌을 많이 받는다.특히 상속과 생성자 부분에서 더욱 혼란스럽다. 그래서 자바와의 구별점을 나름대로 그어보려 한다. 자바스크립트의 객체 생성 과정1. new 연산자를 통해 빈 객체를 생성한다이 부분은 자바와 유사함 2. 생성자 함수는 this 키워드를 통해 초기화를 진행한다자바에서 this.var는 인스턴스 자신을 가르킨다는 점에서 좀 다른 것 같다.this보다는 this()와..
constructor 프로퍼티constructor 프로퍼티는 객체를 초기화하는 데 쓰이는 생성자 함수를 참조한다.모든 객체가 constructor 프로퍼티를 가지고 있다. constructor 프로퍼티로 객체의 타입을 판단할 수 있고, 객체 생성도 가능하다. 즉, 자바로 치면 클래스의 생성자가 객체(함수)에도 있는 모양이다. function Rectangle(x, y, w, h) { this.pointX = x; this.pointY = y; this.width = w; this.height = h; } Rectangle.prototype.toString = function() { return 'Rectangle : { pointX : ' + this.pointX + ', pointY : ' + this..
prototype 프로퍼티모든 함수에는 prototype 프로퍼티가 있는데, 함수가 정의될 때 만들어지고 초기화됨.prototype에 저장된 속성들은 생성자를 통해서 객체가 만들어질 때 그 객체에 연결됨. 프로토타입 객체는 생성자 함수와 연결되고, 이 생성자 함수를 통해서 생성되는 객체들은생성자 함수와 연결된 프로토타입 객체의 프로퍼티들을 똑같이 상속한다. 프로토타입 객체를 사용하면 메모리 사용량을 줄일 수 있고, 프로토타입 객체 내용을 수정하면기존 객체 내용도 같이 변경된다는 장점이 있다. function Ultra(){}Ultra.prototype.ultraProp = true; // Ultra 함수 객체에서 ultraProp 프로퍼티 사용할 수 있다. function Super(){}Super.pr..
내부함수와 외부함수소스 출처 : 생활코딩 (https://opentutorials.org/course/743/6544)function outter(){ var title = 'coding everybody'; // 외부함수의 지역변수 title function inner(){ alert(title); // 내부함수에서 외부함수의 지역변수 title에 접근이 가능하다 } inner();}outter(); // 결과 : coding everybody point! 내부함수는 외부함수의 지역변수에 접근이 가능하다! 클로저란?내부함수가 외부함수의 컨텍스트에 접근할 수 있는 것을 의미한다.외부함수의 호출과 실행이 끝나서 외부함수가 소멸된 후에도내부함수가 외부함수의 변수에 접근할 수 있다. 즉, 외부함수는 외부함수의..
산술 연산자+ (덧셈연산)피연산자가 숫자일 경우 덧셈 연산을 실시피연산자가 boolean일 경우 true는 1, false는 0으로 변환하여 연산 실시피연산자 중 한쪽이 문자열일 경우 나머지 피연산자도 문자열로 변환하여 연산 실시피연산자 중 한쪽이 객체일 경우 객체는 문자열로 변환되고, 나머지 피연산자도 문자열로 변환되어 접합연산 실시 비교연산자== (동등)* 기본 데이터 타입의 비교는 값의 비교, 참조형 데이터 타입의 비교는 참조값(=주소)의 비교좌우 표현식의 값이 동일할 경우 true 반환undefined == null // true 문자열과 숫자 비교 시, 숫자를 문자열로 변환하여 비교객체를 숫자 또는 문자열과 비교 시 객체의 ValueOf(숫자화) toString(문자화) 변환값으로 비교 === ..
리터럴(Literal)코드 내에서 데이터의 값을 표현하는 방식 리터럴 종류숫자, 문자열, 배열, 객체, 함수, boolean, undefined, null 각 리터럴의 특징점 숫자 리터럴Infinity, NaN(Not a number) -> typeof 연산 결과는 모두 'number' -> isFinte 연산 결과는 둘 다 falsevar inf = 1 / 0; document.writeln('inf: ' + inf + ' '); // inf: Infinity document.writeln('typeof inf: ' + typeof inf + ' '); // typeof inf: number document.writeln('isFinite(inf): ' + isFinite(inf) + ' '); // ..
HTML 페이지 구조 1. 태그 아래 사용 가능 Title 2. 태그 아래 사용 가능 인라인 스크립트 방식- 태그 안에 자바스크립트 코드를 직접 작성하는 방법- html 파일 내에서 작성하는 방법 외부 스크립트 방식- js 코드를 외부 js파일에 작성하고 이 파일을 html 파일 내 태그의 src 속성 값으로 지정- html 파일 외부에서 작성하는 방법 * 외부 스크립트와 인라인 스크립트를 한 태그( or ) 내에서 같이 쓰게 되면 인라인 스크립트의 내용은 무효화됨 예제 html 파일 02-01 document.writeln('이게 바로 인라인 스크립트 '); //외부 스크립트 - outside.js를 불러옴 document.writeln('이것도 인라인 스크립트이지만 외부스크립트랑 같이 쓰이면 무효화 ..