0

私はこのJSを持っています:

function SetAPIValue(key1, value1, scormVersion, methodCalled) {
   if (key1 == true || key1 == false) { }
   else
   {
     alert("value1 = " + value1);
     /* value1 came back with two values for cmi.suspend_data! */
     var obj = {
       key: key1,
       value: value1
    }
   setValuesArray.push(obj);
 }

どういうわけか、別の value1 には key1 の 2 つの値が含まれています。各値とキーが行にあるように、配列にプッシュするときにそれらを吐き出すにはどうすればよいですか?

ありがとう

4

1 に答える 1

0

value1が複数の値を含む配列の場合:

function SetAPIValue(key1, value1, scormVersion, methodCalled) {
    if (value1 instanceof Array) {
        for (var i = 0; i < value1.length; i++) {
            setValuesArray.push({
                key: key1,
                value: value1[i]
            );
        }
    } else {
        setValuesArray.push({
            key: key1,
            value: value1
        });
    }
 }

これにより、同じキーを持つ複数のオブジェクトが残るため、望ましくない場合があることに注意してください。

于 2012-10-23T12:46:01.310 に答える