안녕하세요!! 쥔장입니다.
아침에 회사와서.. 게시판을 살펴보던중..
질문을 발견했습니다.
마치 제가 음식점을 차려 처음으로 손님을 받는 기분이네요..
ㅋㅋ 할튼... 제가 알고 있는 부분에 대해서.. 말씀드리겠습니다.
우선.. SubString은 메서드(method)라고 합니다.
요즘 프로그래밍을 객체지향이라고 많이 말하는걸 들으셨을겁니다.
즉.. 요즘 프로그램은 3가지로 구분된다고 해도 과언이 아닙니다.
객체(object),메서드(method),프로퍼티(property)
이렇게 세가지 인데요...
이해하기 쉽도록 액션으로 설명드리면...
=============================
myString.substring(from, to);
myString.length;
=============================
여기서 객체는 myString
메서드는 substring
프로퍼티는 length 가 됩니다.
메서드는 객체에 대한 동사
프로퍼티는 객체에 대한 명사라고 생각하시면 됩니다.
[예제1]
----------------------------------------------
str="abcdef";
trace(str.substring(1,2));
----------------------------------------------
위와같이.. 입력하신후 실행하시면..
Output창에.. b라고 나오는걸 보실 수 있으실겁니다.
[예제2]
----------------------------------------------
str="abcdef";
for(i=1;i<=str.length;i++){
trace(str.substring(0,i));
}
----------------------------------------------
위의 경우에는
Output창에..
a
ab
abc
abcd
abcde
abcdef
라고 나오는걸 보실 수 있으실겁니다.
사실.. String객체의 메서드와 프로퍼티는 현업에서..
많이 쓰이는 것들입니다.
예를들어.. 주관식 문제 채점시에..
대소문자를 구별한다든가!!
필요한 부분만.. 채점을 한다던가..
여러가지 응용부분이 많다고 할 수 있습니다.
[예제3]
타이핑을 궁금해 하셨으니..
예제를 함 만들어보겠습니다.
음... 만들기전에 우선.. 내가 어떻게 어떤것을 만들지 상상하는게
중요합니다.
전.. 이렇게 함 만들어볼까.. 상상합니다!!
음.. 우선..
1. 동적으로 두개의 텍스트 박스를 만들구
2. 위쪽의 텍스트 박스에다가는 "abcdef"라는 문자를 대입할겁니다.
3. 글구.. 키보드를 누를때, 위쪽의 앞쪽 문자와 누른 키보드의 문자가 같으면, 아래쪽에 문자가 이동되도록
4. 그리고.. 위쪽의 앞쪽 문자 하나는 제거되도록이요...
함 만들어볼까요..!! ^^
1번내용 : 텍스트 박스 두개 만들기...
----------------------------------------------
_root.createTextField("str1",1,20,20,300,20);
str1.border=true;
_root.createTextField("str2",2,20,60,300,20);
str2.border=true;
----------------------------------------------
border는 박스 테두리인데.. default가 false기 때문에..
true로 바꿔논거구요.. 그래야 만들어진게 보이니까요..
2번내용 : str1에 "abcdef"대입하기...
----------------------------------------------
str1.text="abcdef";
----------------------------------------------
아주 간단하져.. ㅋㅋ
3,4번내용 : 글구.. 키보드를 누를때,...
----------------------------------------------
KeyListener = new Object();
KeyListener.onKeyDown = function() {
if (Key.getAscii() == str1.text.charCodeAt(0)){
str2.text+=str1.text.slice(0,1);
str1.text=str1.text.slice(1);
}
};
Key.addListener(KeyListener);
----------------------------------------------
여기서 핵심 구문을 추리자면..
----------------------------------------------
KeyListener = new Object();
KeyListener.onKeyDown = function() {
...
};
Key.addListener(KeyListener);
----------------------------------------------
이 부분입니다.
Listener의 개념인데.. KeyListener 객체를 Listener에 등록해서..
사용자가 키를 눌렀을때,
...에 어떤 일을 수행하겠다는 내용을 넣으면 되는거져...
그 다음..
if (Key.getAscii() == str1.text.charCodeAt(0)){
str2.text+=str1.text.slice(0,1);
str1.text=str1.text.slice(1);
}
이 부분은.. 키를 누른 값과 str1.text의 첫번째 문자의 아스키 코드 값이 같은면,..
if문 가운데 내용을 수행하라는 뜻이죠..
이정도면.. 궁금하신게 해결되셨는지 모르겠네요..
저 또한 이런 의욕이.. 꾸준히.. 지속되어야 할텐데..
할튼.. 무리하지 않고.. 차분히.. 그리고 천천히..
사이트를 운영할 생각입니다.
자주 들러주시구요..
반갑습니다...
아래에.. 전체 소스 두겠습니다.
아 글구.. 전.. 거의 모두 프로그램을 해결하기 때문에..
아래소스.. 카피하시구.. 붙이시면..
바로 결과 확인할 수 있으실 겁니다.
--------------- 전체소스 ---------------
_root.createTextField("str1", 1, 20, 20, 300, 20);
str1.border = true;
_root.createTextField("str2", 2, 20, 60, 300, 20);
str2.border = true;
str1.text = "abcdef";
KeyListener = new Object();
KeyListener.onKeyDown = function() {
if (Key.getAscii() == str1.text.charCodeAt(0)){
str2.text+=str1.text.slice(0,1);
str1.text=str1.text.slice(1);
}
};
Key.addListener(KeyListener);
--------------------------------------------------
==========================================================
[구문]
myString.substring(from, to)
[매개 변수]
from 하위 문자열을 만들기 위해 사용될 myString의 첫 문자 위치를 나타내는 정수입니다. from의 유효한 값은 0에서 string.length - 1까지입니다. from이 음수 값이면 0이 사용됩니다.
to 추출될 myString의 마지막 문자의 인덱스에 1을 더한 정수입니다. to의 유효한 값은 1에서 string.length까지입니다. to 매개 변수에 의해 인덱싱된 문자는 추출된 문자열에 포함되지 않습니다. 이 매개 변수가 생략되었으면 string.length가 사용됩니다. 이 매개 변수가 음수값이면 0이 사용됩니다.
[설명]
메서드; from과 to 매개 변수가 지정하는 점들 사이의 문자로 구성된 문자열을 반환합니다. to 매개 변수를 지정하지 않았으면 하위 문자열의 끝은 문자열의 끝이 됩니다. from의 값이 to의 값과 같으면 이 메서드는 빈 문자열을 반환합니다. from의 값이 to의 값보다 크면 함수가 실행되기 전에 매개 변수가 자동으로 교체되고 원래 값은 변경되지 않습니다.
--------------------- [원본 메세지] ---------------------
타이핑치는기법을 나타낼때 일일히 하나하나 수작업하는것보다 액션을 이용하면 편하다고하는데
이속성에 대해서 알고싶어요
그리고 예제 명령어라는든지(이걸함수라고하나요?)알고싶습니다.
아시면 답변부탁드립니다.
아침에 회사와서.. 게시판을 살펴보던중..
질문을 발견했습니다.
마치 제가 음식점을 차려 처음으로 손님을 받는 기분이네요..
ㅋㅋ 할튼... 제가 알고 있는 부분에 대해서.. 말씀드리겠습니다.
우선.. SubString은 메서드(method)라고 합니다.
요즘 프로그래밍을 객체지향이라고 많이 말하는걸 들으셨을겁니다.
즉.. 요즘 프로그램은 3가지로 구분된다고 해도 과언이 아닙니다.
객체(object),메서드(method),프로퍼티(property)
이렇게 세가지 인데요...
이해하기 쉽도록 액션으로 설명드리면...
=============================
myString.substring(from, to);
myString.length;
=============================
여기서 객체는 myString
메서드는 substring
프로퍼티는 length 가 됩니다.
메서드는 객체에 대한 동사
프로퍼티는 객체에 대한 명사라고 생각하시면 됩니다.
[예제1]
----------------------------------------------
str="abcdef";
trace(str.substring(1,2));
----------------------------------------------
위와같이.. 입력하신후 실행하시면..
Output창에.. b라고 나오는걸 보실 수 있으실겁니다.
[예제2]
----------------------------------------------
str="abcdef";
for(i=1;i<=str.length;i++){
trace(str.substring(0,i));
}
----------------------------------------------
위의 경우에는
Output창에..
a
ab
abc
abcd
abcde
abcdef
라고 나오는걸 보실 수 있으실겁니다.
사실.. String객체의 메서드와 프로퍼티는 현업에서..
많이 쓰이는 것들입니다.
예를들어.. 주관식 문제 채점시에..
대소문자를 구별한다든가!!
필요한 부분만.. 채점을 한다던가..
여러가지 응용부분이 많다고 할 수 있습니다.
[예제3]
타이핑을 궁금해 하셨으니..
예제를 함 만들어보겠습니다.
음... 만들기전에 우선.. 내가 어떻게 어떤것을 만들지 상상하는게
중요합니다.
전.. 이렇게 함 만들어볼까.. 상상합니다!!
음.. 우선..
1. 동적으로 두개의 텍스트 박스를 만들구
2. 위쪽의 텍스트 박스에다가는 "abcdef"라는 문자를 대입할겁니다.
3. 글구.. 키보드를 누를때, 위쪽의 앞쪽 문자와 누른 키보드의 문자가 같으면, 아래쪽에 문자가 이동되도록
4. 그리고.. 위쪽의 앞쪽 문자 하나는 제거되도록이요...
함 만들어볼까요..!! ^^
1번내용 : 텍스트 박스 두개 만들기...
----------------------------------------------
_root.createTextField("str1",1,20,20,300,20);
str1.border=true;
_root.createTextField("str2",2,20,60,300,20);
str2.border=true;
----------------------------------------------
border는 박스 테두리인데.. default가 false기 때문에..
true로 바꿔논거구요.. 그래야 만들어진게 보이니까요..
2번내용 : str1에 "abcdef"대입하기...
----------------------------------------------
str1.text="abcdef";
----------------------------------------------
아주 간단하져.. ㅋㅋ
3,4번내용 : 글구.. 키보드를 누를때,...
----------------------------------------------
KeyListener = new Object();
KeyListener.onKeyDown = function() {
if (Key.getAscii() == str1.text.charCodeAt(0)){
str2.text+=str1.text.slice(0,1);
str1.text=str1.text.slice(1);
}
};
Key.addListener(KeyListener);
----------------------------------------------
여기서 핵심 구문을 추리자면..
----------------------------------------------
KeyListener = new Object();
KeyListener.onKeyDown = function() {
...
};
Key.addListener(KeyListener);
----------------------------------------------
이 부분입니다.
Listener의 개념인데.. KeyListener 객체를 Listener에 등록해서..
사용자가 키를 눌렀을때,
...에 어떤 일을 수행하겠다는 내용을 넣으면 되는거져...
그 다음..
if (Key.getAscii() == str1.text.charCodeAt(0)){
str2.text+=str1.text.slice(0,1);
str1.text=str1.text.slice(1);
}
이 부분은.. 키를 누른 값과 str1.text의 첫번째 문자의 아스키 코드 값이 같은면,..
if문 가운데 내용을 수행하라는 뜻이죠..
이정도면.. 궁금하신게 해결되셨는지 모르겠네요..
저 또한 이런 의욕이.. 꾸준히.. 지속되어야 할텐데..
할튼.. 무리하지 않고.. 차분히.. 그리고 천천히..
사이트를 운영할 생각입니다.
자주 들러주시구요..
반갑습니다...
아래에.. 전체 소스 두겠습니다.
아 글구.. 전.. 거의 모두 프로그램을 해결하기 때문에..
아래소스.. 카피하시구.. 붙이시면..
바로 결과 확인할 수 있으실 겁니다.
--------------- 전체소스 ---------------
_root.createTextField("str1", 1, 20, 20, 300, 20);
str1.border = true;
_root.createTextField("str2", 2, 20, 60, 300, 20);
str2.border = true;
str1.text = "abcdef";
KeyListener = new Object();
KeyListener.onKeyDown = function() {
if (Key.getAscii() == str1.text.charCodeAt(0)){
str2.text+=str1.text.slice(0,1);
str1.text=str1.text.slice(1);
}
};
Key.addListener(KeyListener);
--------------------------------------------------
==========================================================
[구문]
myString.substring(from, to)
[매개 변수]
from 하위 문자열을 만들기 위해 사용될 myString의 첫 문자 위치를 나타내는 정수입니다. from의 유효한 값은 0에서 string.length - 1까지입니다. from이 음수 값이면 0이 사용됩니다.
to 추출될 myString의 마지막 문자의 인덱스에 1을 더한 정수입니다. to의 유효한 값은 1에서 string.length까지입니다. to 매개 변수에 의해 인덱싱된 문자는 추출된 문자열에 포함되지 않습니다. 이 매개 변수가 생략되었으면 string.length가 사용됩니다. 이 매개 변수가 음수값이면 0이 사용됩니다.
[설명]
메서드; from과 to 매개 변수가 지정하는 점들 사이의 문자로 구성된 문자열을 반환합니다. to 매개 변수를 지정하지 않았으면 하위 문자열의 끝은 문자열의 끝이 됩니다. from의 값이 to의 값과 같으면 이 메서드는 빈 문자열을 반환합니다. from의 값이 to의 값보다 크면 함수가 실행되기 전에 매개 변수가 자동으로 교체되고 원래 값은 변경되지 않습니다.
--------------------- [원본 메세지] ---------------------
타이핑치는기법을 나타낼때 일일히 하나하나 수작업하는것보다 액션을 이용하면 편하다고하는데
이속성에 대해서 알고싶어요
그리고 예제 명령어라는든지(이걸함수라고하나요?)알고싶습니다.
아시면 답변부탁드립니다.
다음검색