문제

다음 확장 방법을 프로토 타입에 포함시켜야하는 프로토 타입 모델이 있습니다.

String.prototype.startsWith = function(str){
    return (this.indexOf(str) === 0);
}

예 : [JS

sample = function() {
    this.i;
}

sample.prototype = {
    get_data: function() {
        return this.i;
    }
}

프로토 타입 모델에서는 연장 방법이나 다른 방법을 사용하여 JS 프로토 타입 모델에서 확장 방법을 생성하는 방법을 어떻게 사용할 수 있습니까?

도움이 되었습니까?

해결책

문자열에서 새 메소드 호출 :

String.prototype.startsWith = function(str){
    return (this.indexOf(str) === 0);
}

간단해야합니다.

alert("foobar".startsWith("foo")); //alerts true

두 번째 예제에서는 멤버 변수 "i"를 설정하는 생성자를 원한다고 가정합니다.

function sample(i) { 
    this.i = i;     
}

sample.prototype.get_data = function() { return this.i; }

다음과 같이 사용할 수 있습니다.

var s = new sample(42);
alert(s.get_data()); //alerts 42

다른 팁

그래도 생성자 기능은 대문자로 시작해야합니다.

function Sample(i) { 
    this.i = i;     
}

var s = new Sample(42);

이것이 얼마나 정확한지 확실하지 않지만이 코드를 시도하십시오. 그것은 나를 위해 IE에서 일했습니다.

JavaScript 파일 추가 :

String.prototype.includes = function (str) {
    var returnValue = false;

    if(this.indexOf(str) != -1){

        returnValue = true;
    }

    return returnValue;
}
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top