반응형
간단한 덧셈 계산기로 함수 연습

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
 <![CDATA[
 private function func(nVal1:int, nVal2:int):int
 {
  return nVal1 + nVal2;
 }
  
  private function Clicks():void
  {
   var result:int;
   
   result = func(int(txtVal1.text),int(txtVal2.text));
   txtRlt.text = String(result);
   txtRlt2.text = String(result);

  }
 ]]>
 
</mx:Script>

 <mx:Button x="501" y="44" label="결과값" id="btnResult" click="Clicks();"/>
 <mx:TextInput x="44" y="44" id="txtVal1"/>
 <mx:Text x="212" y="46" text="+"/>
 <mx:TextInput x="250" y="44" id="txtVal2"/>
 <mx:Text x="425" y="74" text="Text" width="73" height="69" fontSize="23" id="txtRlt"/>
 <mx:TextInput x="425" y="44" width="68" id="txtRlt2"/>
 
</mx:Application>

특이한것은

배열 (Array)에서 = 의 뜻은 Call by Reference의 의미였다는 것!!
  public function arrayTest(evt:Event):void
  {
   var myArray:Array =[1,"two",true,3.14];
   var my2:Array = myArray;
   
   my2[0]=100;
   
   for(var i:int =0; i < myArray.length; i++)
  {
    trace(myArray[i]);
   }
}
->실행 결과로 
0
two
true
3.14

1이 아닌 0이 나왔다.

연관배열
- 액션 스크립트에서는 정수 값으로 접근하는 배열 객체 외에 키와 속성을 하나의 쌍으로 표현하는 연관배열을 지원함,.
연관객체는 액션 스크립트 클래스의 최상위 객체인 Object를 통해 다음과 같이 생성한다.
   var obj:Object = new Object();
   obj.aKey ="a value";
   obj.bKey ="b value";
   
   trace(obj["aKey"]);
   trace(obj["bKey"]);
  }
 
 연관배열의 for in문

연관배열은 정수 인덱스 값으로 접근 불가
(그러므로 for문 사용불가)
 연관배열의 for each 문
 for(var key:String in obj)
{
trace(key+ " " +obj[key]);
}
 for each (var val : String in obj)
{
trace(val);
}

두개의 반복문의 차이점은

var key값에 값을 저장해서 보여주냐,  아니면 저장없이 보여주냐의 차이

 날짜와 시간 다루기
 var current:Date = new Date();

trace(current);

//이러면 Date 인스턴스 생성, 현재 시간으로 초기화 된다규!

var birthday:Date = new Date(1984,7,20);

trace(birthday);


주의점은 밀리세컨드단위까지 표시됨!!
(이말은 즉슨 밀리세컨드까지 생성자에 입력가능하단 이야기^^)



 문자열다루기  - indexOf()  ,  lastIndexOf() 
[문자열 내에서 특정문자를 검색할때 사용]
 var msg:String = "A little boy was born in Korea";
 //"boy" 문자열을 왼쪽->오른쪽으로 검색
var index:int = msg.indexOf("boy");
trace(indexOf method result: " +index);
 //"boy"문자열을 오른쪽->왼쪽으로 곰색
index = msg.lastIndexOf("boy");
trace("lastIndexOf method result: " + index);

그밖의 지정한 인덱스의 문자열을 추출할땐
substring(), substr() 또는 slice()메소드 사용

substring(startIndex, endIndex)

 문자열 자르기 split(delimiter, limit)
var imgFile:String = "mypic.jpg";

var splittedNames:Array = imgFile.split(".");
trace("File name: " splittedNames[0]);
trace("Extension name: " splittedNames[1]); 

 파일 확장자와 파일명 을 자를때 유용하겠지요?^^


참고사항
 internal
(default)
 동일한 패키지 내에서 참조할수 있다. 명시적으로 선언하지 않으면 internal 접근제한자 속성을 가짐
 private 클래스 내에서만 참조가능 
 protected 클래스 내와 상속받은 클래스 내에서만 참조가능 
 public 어느 위치에도 참조가능 





반응형

+ Recent posts