0

は、私は(ここではサンプルデータ)は、このオブジェクト・スキーマの値を複製するアルゴリズム作成したい:抽出配列の値を動的に

let layer1 = {name: 'x', 
      values: [{_color: '#996666', time: 0, tween: 'quadEaseIn', value: 0}, 
        {_color: '#b074a0', time: 4, value: 5.500023}, 
        {_color: '#b074a0', time: 3, value: 4.500023}, 
        {_color: '#b074a0', time: 2, value: 3.500023}], 
      tmpValue: 3.500023, 
      _color: '#6ee167', 
      _value: 0}; 

第三、第四、およびこのサンプルデータの5行はに関連しています問題。

これまでのアルゴリズムは以下のとおりです。変数numKeyframesはすでに定義されています(n)。最初のループでは、動的オブジェクトがkeyframesという配列に追加されます。

2番目のループでは、キーフレーム配列がレイヤーオブジェクトに含まれています。ここでのアイデアは、キーフレームは、その中にあるオブジェクトの代わりに複数のオブジェクトを挿入しなければならないということです(上記のサンプルオブジェクトデータと同様)。

しかし、これは機能しません。オブジェクトは含まれていないようです。

キーフレームを[0]に置き換えた場合、すべての値(オブジェクト)を挿入する必要がある場合は最初の値(オブジェクト)しか取得できません。

これについてはどのような方法が最適ですか?

答えて

0

私はあなたのコード内の任意のエラーを持っていないと思い、すべてがちょうど

console.dir(layerData); 
+0

が正しい、次のようconsole.dir機能を使用してデータ構造を確認するために行い、そこにエラーではない、とconsole.dir(layerData) show object([オブジェクトオブジェクト]、[オブジェクトオブジェクト]、[オブジェクトオブジェクト])...レイヤー内のキーフレームです。正しく解析する方法の質問があります –

+0

これを試しました:console.dir ( "layerData:" + JSON.stringify(layerData)); –

+0

は、keyframesオブジェクトがネストされていることを示しています。例えば、ここにそれらの1つ: –

関連する問題