>  기사  >  웹 프론트엔드  >  Java_javascript 기술로 Map 객체의 기능을 구현하기 위한 JS 사용자 정의 객체의 방법

Java_javascript 기술로 Map 객체의 기능을 구현하기 위한 JS 사용자 정의 객체의 방법

WBOY
WBOY원래의
2016-05-16 16:19:011670검색

이 기사의 예에서는 JS 사용자 정의 객체가 Java에서 Map 객체 기능을 구현하는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 분석은 다음과 같습니다.

Java에는 컬렉션, 맵 및 기타 객체 저장 도구 클래스가 있습니다. 이러한 객체는 사용하기 쉽지만 JavaScript에서는 Array 객체만 사용할 수 있습니다.

여기서 사용자 정의 개체를 만듭니다. 이 개체에는 데이터를 저장하는 배열이 포함되어 있습니다. 데이터 개체는 실제로 콘텐츠를 저장할 수 있는 키입니다.

여기서 Key는 String 유형을 사용해야 하며, Java와 마찬가지로 추가, 삭제, 수정, 가져오기 등의 작업을 수행할 수 있습니다.

사용 방법은 매우 간단합니다. 먼저 도구를 보여드리겠습니다.

코드 복사 코드는 다음과 같습니다.
/**
* @version 1.0
* 페이지 맵 개체를 구현하는 데 사용됩니다. 키는 문자열만 가능하며 개체는 임의입니다.
​*/ 
var Map = function(){ 
    this._entrys = 새로운 배열(); 
     
    this.put = 함수(키, 값){ 
        if (키 == null || 키 == 정의되지 않음) { 
            반품; 
        } 
        var index = this._getIndex(key); 
        if (색인 == -1) { 
            var 항목 = 새 개체(); 
            Entry.key = 키; 
            항목.값 = 값; 
            this._entrys[this._entrys.length] = 항목; 
        }else{ 
            this._entrys[index].value = 값; 
        }         
    }; 
    this.get = 함수(키){ 
        var index = this._getIndex(key); 
        반환(색인 != -1) ? this._entrys[index].value : null; 
    }; 
    this.remove = 기능(키){ 
        var index = this._getIndex(key); 
        if (색인 != -1) { 
            this._entrys.splice(index, 1); 
        } 
    }; 
    this.clear = function(){ 
        this._entrys.length = 0;; 
    }; 
    this.contains = 함수(키){ 
        var index = this._getIndex(key); 
        반환(색인 != -1) ? 사실 : 거짓; 
    }; 
    this.getCount = function(){ 
        this._entrys.length를 반환합니다. 
    }; 
    this.getEntrys =  function(){ 
        this._entrys를 반환합니다. 
    }; 
   this._getIndex = 함수(키){ 
        if (키 == null || 키 == 정의되지 않음) { 
            -1을 반환합니다. 
        } 
        var _length = this._entrys.length; 
        for (var i = 0; i < _length; i ) { 
            var 항목 = this._entrys[i]; 
            if (항목 == null || 항목 == 정의되지 않음) { 
                계속하다; 
            } 
            if (entry.key === key) {//같음
                내가 반환; 
            } 
        } 
        -1을 반환합니다. 
    }; 
}

 
如果你不懂Js中对象的创建等一些基础知识,自己可以网上查一下。
复代码 代码如下:
// 自정义Map对象 
var 지도 = 새로운 지도(); 
map.put("a","a"); 
Alert(map.get("a")); 
map.put("a","b"); 
Alert(map.get("a"));


a를 먼저 팝한 다음 b를 팝하세요. 왜냐하면 후자가 이전 것을 덮어쓰게 되기 때문입니다!

다른 방법도 직접 적어주세요!

이 기사가 모든 사람의 JavaScript 프로그래밍 설계에 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.