2014-07-06 68 views
0

我在我的服務器端貓鼬代碼有幾個命令,但我不知道爲什麼我不能在服務器端添加更多的屬性到這個數據對象,而我可以做在鉻控制檯相同,沒有任何問題Javascript Objects properties not added

var data = {}; 
     data = noteData; 
     data.uploader = req.user.username; 
     console.log(data.uploader); 
     console.log(req.user.username); 
     data.actualFileName = actualFileName; 
     console.log(data.actualFileName); 
     console.log(actualFileName); 
     data.storedFileName = storedFileName; 
     console.log(data.storedFileName); 
     console.log(req.storedFileName); 
     console.log(data); 

的noteData具有下列值 -

{"title":"1","subject":"2","author":"3","department":"CSE","college":"MSRIT","description":"45","details":"5","tags":["6"]} 

和上面的代碼片段控制檯輸出爲 -

undefined 
[email protected] 
undefined 
[ 'EIPR.odt', 'EIPR.docx' ] 
undefined 
undefined 
{"title":"1","subject":"2","author":"3","department":"CSE","college":"MSRIT","description":"45","details":"5","tags":["6"]} 

我還應該嘗試調試此錯誤還是應該提供哪些其他信息?

回答

1

當你說data = noteData - 它現在是與noteData ...相同的類型,所以如果noteData.property不存在,數據的屬性將不存在。

+0

所以如果我跳過那部分,並寫noteData.uploader =值;等等,那麼它應該正常工作?但它並不明顯。我確實在chrome控制檯中嘗試了兩種方式,並且都工作正常,如果我使用data = noteData – DeadMan

+0

它看起來就像在您爲noteData的值共享的字符串中一樣,沒有關係,「uploader」沒有值...所以它不會工作。如果noteData是您實例化的對象,並且如果您將noteData.uploader設置爲某個對象,那麼它就會工作。嘗試data.base = noteData ...然後繼續其餘的代碼...然後data.base將保存該字符串,並且其餘的屬性將正確設置 – TJB4rn3s

+0

,因爲數據是該對象的單獨實例。所以通過將該值設置爲數據,它無需注意數據。如果你想將noteData設置爲數據類型的對象,請使用類似http://barnescode.com/f/ex.txt的東西。否則,你需要明確地設置noteData.uploader – TJB4rn3s

1

試試這種方法,如果它不起作用,告訴我們你的貓鼬代碼。

var data = {}; 
data = noteData; 

data['uploader'] = 'USER_NAME'; 
console.log(data.uploader); 
data['actualFileName'] = 'FILE_NAME'; 
console.log(data.actualFileName); 
data['toredFileName'] = 'STORE_FILENAME'; 
console.log(data.storedFileName); 
console.log(data); 

Object {title: "1", subject: "2", author: "3", department: "CSE", college: "MSRIT"…} 
actualFileName: "FILE_NAME" 
author: "3" 
college: "MSRIT" 
department: "CSE" 
description: "45" 
details: "5" 
subject: "2" 
tags: Array[1] 
title: "1" 
toredFileName: "STORE_FILENAME" 
uploader: "USER_NAME" 
__proto__: Object 
+0

我只是改變了busboy方法來接收領域,它收到了預期的結果,我想我錯誤地接受或發送數據與文件一起busboy的行爲。無論如何,謝謝你的時間 – DeadMan