2016-09-01 9 views
0

これは違い何、JavaScriptで、かなり基本的な質問かもしれない:ありがとうJavaScriptの配列の宣言方法の違い

function GetSampleUsersList() { 
    var userDetails = {}; 
    var usersList = []; 
    for (var i = 1; i <= 3; i++) { 
     userDetails["UserId"] = i; 
     userDetails["UserName"] = "User- " + i; 
     userDetails["Company"] = "Company- " + i; 
     usersList.push(userDetails); 
    } 
    return JSON.stringify(usersList); 
} 

var userDetails = {}; 
var usersList = []; 

は、私は、コードを次していた記事を読んでいました

+1

参照INFOMATIONオブジェクトのプロパティにアクセスするブラケット表記 – RomanPerekhrest

答えて

2

これはかなり基本的な質問です。

var o = {} 

は、空のオブジェクトを初期化します。次に、そのプロパティを割り当てます。

var a = [] 

は空の配列を初期化する。あなただけのプロパティを上書きするので、あなたは、その後、あなたはすべてのために使用されている

a.push(o); 
2

が同じuserDetailsイテレーションのアレイに新しく作成されたオブジェクトを追加し、同じオブジェクトをプッシュしている一方で、あなたはすべてのために、常に同じ内容を持っています配列内の要素です。

function GetSampleUsersList() { 
 
    var userDetails = {}; 
 
    var usersList = []; 
 
    for (var i = 1; i <= 3; i++) { 
 
     userDetails["UserId"] = i; 
 
     userDetails["UserName"] = "User- " + i; 
 
     userDetails["Company"] = "Company- " + i; 
 
     usersList.push(userDetails); 
 
    } 
 
    return JSON.stringify(usersList); 
 
} 
 

 
console.log(GetSampleUsersList());

ベターすべてのforループ新しい空のオブジェクトを使用します。よりため

function GetSampleUsersList() { 
 
    var userDetails; 
 
    var usersList = []; 
 
    for (var i = 1; i <= 3; i++) { 
 
     userDetails = {}; // this is necessary 
 
     userDetails["UserId"] = i; 
 
     userDetails["UserName"] = "User- " + i; 
 
     userDetails["Company"] = "Company- " + i; 
 
     usersList.push(userDetails); 
 
    } 
 
    return JSON.stringify(usersList); 
 
} 
 
console.log(GetSampleUsersList());

0
var userDetails = {}; -- object notation in javascript 
var usersList = []; is an array notation in javascript. 

[ "ユーザーIDは"] `だけで` userDetails = {}は `配列と` userDetailsないここhttp://yuiblog.com/blog/2006/11/13/javascript-we-hardly-new-ya/

+1

詳細を編集してください。コード専用と「試してください」の回答は、検索可能なコンテンツが含まれていないため、推奨されません。なぜ誰かが「これを試してみる」べき理由を説明しません。 – abarisone

+0

私は、 –

0
function GetSampleUsersList() {  
var userDetails = {}; //created an empty object userDetails 
var usersList = []; //created an empty array userDetails 
for (var i = 1; i <= 3; i++) { //looping to add property and value in object and for each iteration object is getting pushed into array at an index i. 
    userDetails["UserId"] = i; 
    userDetails["UserName"] = "User- " + i; 
    userDetails["Company"] = "Company- " + i; 
    usersList.push(userDetails); // pushing object {"UserId":i, "UserName":"User-i", "Company":"Company-i"} into array 
} 
    return JSON.stringify(usersList); // Parsing the object into javascript string 
} 
関連する問題