2017-02-06 9 views
0

私のモジュールでは、データ型とFullNameの2つのプロパティを持つ未知のサイズのユーザー定義オブジェクトの配列を宣言する必要があります。私はこれらのプロパティを作成時にnullに設定できるようにしたい。Javaスクリプトで未定義のサイズのユーザー定義オブジェクトの配列を宣言する方法

私は以下のコードを試しました。

VAR結果= [{ DTYPE:ヌル、 FNAME:ヌル、 }]。

エラーが発生しました:未キャッチタイプエラー:未定義のプロパティ 'dtype'を設定できません。

どのような考えですか?

+0

'VARのFOO = []にそのオブジェクトを追加し、' – Will

+0

はどのような特性を初期化することができますか? – codingyo

+1

No repro。あなたはおそらく実際にjavascriptを使用しているのではないでしょうか、それとも多分typescriptですか?あなたがいるブラウザでjavascriptコンソールを開きます。質問に追加した内容を貼り付けてください。タダ。作品。あなたのエラーは別の城にあります。 – Will

答えて

1

だから、Javascriptを配列に行くタイプを定義するか、制限をサポートしていませんし、あなたがいずれかのサイズを指定する必要はありません、あなただけのネイティブそれにそれらのオブジェクトを追加

を維持することができますしかし、あなたが望んでいた場合にはノアのロジックを適用

function addThing(thing) { 
    if(thing.hasOwnProperty("fullName") && thing.hasOwnProperty("dataType")) { 
     array.push(thing); 
    } 
} 

https://jsfiddle.net/9sL920qt/

0

方法があることに入ったタイプを制限するために、私は私のために働いていた、このソリューションを試してみました。

var result = []; 

は一時オブジェクトを持っている:

var resultItem = {}; 

は一時オブジェクトの値を設定します。次いで

resultItem.fname = resultsinJson.Data[i][keys]; 
resultItem.dtype = resultsinJson.Data[i][keys] ; 

、最終アレイ

result[i] = resultItem; 
関連する問題