1

以下は、プログラム全体で範囲オブジェクトを作成するために使用したコードです。

function parseRangeString(id, range) {
    var myRangeString = range;
    var myRangeStringArray = myRangeString.split(/[\s]+/);
    var myMax;
    var myMin;
    var myMinOp;
    var myMaxOp;
    var myMaxInc = false;
    var myMinInc = false;
    var op1;
    var op2;
    var cons1;
    var cons2;
    op1 = myRangeStringArray[0];
    cons1 = parseFloat(myRangeStringArray[1]);
    if (myRangeStringArray[2] != null) {
        op2 = myRangeStringArray[3];
        cons2 = parseFloat(myRangeStringArray[4]);
    }
    if (cons1 < cons2) {
        myMin = cons1;
        myMinOp = op1;
        myMax = cons2;
        myMaxOp = op2;
    } else {
        myMin = cons2;
        myMinOp = op2;
        myMax = cons1;
        myMaxop = op1;
    }
    if (myMaxOp.indexOf('=') != -1) {
        myMaxInc = true;
    }
    if (myMinOp.indexOf('=') != -1) {
        myMinInc = true;
    }
    firstRange = new Range(id, myMin, myMax, myMinInc, myMaxInc); //gives back a range object
    return firstRange;
}

今、私は範囲オブジェクトを文字列に変換する別の関数を作成する必要があります、私はatmで立ち往生しているので、できるだけ早く必要な助けをしてください!

4

2 に答える 2

2

toStringJavaScript オブジェクトの標準関数を上書きして、必要なものを返すようにすることができます。この例を考えてみましょう ( demo ):

var a = { some_property:'this could be coming from the user' }; // create a new object
a.toString = function(){
    // in here, the "this" will point to the object in "a" variable. (well, at least mot of the times)
    return this.some_property;
};
console.log(''+a); // force the object to string

このようなオブジェクトをたくさん作成する場合はprototype、それらの を使用してtoString関数を配置することを検討してください。より効率的になります。MDN には優れた例があります 。

于 2012-08-02T11:21:29.807 に答える
-1

まあ、私は毎日同じ答えを出すと思います。:)

JSON.stringify( range );
于 2012-08-02T11:21:00.547 に答える