[AS 3.0] 배열 내부의 중복된 요소 제거하기
원문 : http://blog.workrooom.com/?eid=956306
배열 내부에 중복된 요소가 있을 경우 중복된 요소를 제거하고 새로운 배열로 만들기
var testArray:Array = new Array("사과", "참외", "귤", "복숭아", "바나나", "귤", "배", "바나나", "참외");
function duplicateCheck(input_array:Array) {
var result_array:Array = new Array();
var tempStr:String = "";
for (var i = 0; i < input_array.length; i++) {
if (tempStr.search(input_array[i]) == -1) {
//중복체크용 문자열에 값이 없으면 새로운 배열에 추가
result_array.push(input_array[i]);
tempStr += input_array[i] + " ";
trace(input_array[i]);
}
}
return result_array;
}
duplicateCheck(testArray);
//Output
//사과
//참외
//귤
//복숭아
//바나나
//배
search() 메서드
function search(pattern:*):int
지정된 pattern을 검색하고 일치하는 첫 번째 하위 문자열의 인덱스를 반환합니다. 일치하는 하위 문자열이 없으면 -1이 반환됩니다.
매개 변수
pattern:* — 비교할 패턴으로, 모든 유형의 객체가 될 수 있지만 일반적으로는 문자열 또는 일반 표현식입니다. pattern이 일반 표현식 또는 문자열이 아니면 문자열로 변환된 후 메서드가 실행됩니다. 일반 표현식을 지정한 경우 이 메서드는 일반 표현식의 전역 플래그("g") 및 lastIndex 속성을 무시합니다. 이 속성은 수정되지 않고 그대로 유지됩니다. 값을 전달하지 않거나 정의되지 않은 값을 전달하면 -1이 반환됩니다.
반환값
int — 일치하는 첫 번째 하위 문자열의 인덱스입니다. 일치 항목이 없으면 -1입니다. 이 문자열의 인덱스는 0부터 시작하므로 문자열에서 첫 번째 문자의 인덱스는 0이고 마지막 문자의 인덱스는 string.length - 1입니다.
