我只是調用api返回josn編碼數據並試圖打印對象屬性,但顯示未定義,但是當我打印該對象時,該對象具有該屬性和值。 「sameerdighe14 @ gmail的:在javascript中訪問對象屬性的問題顯示未定義?
我的代碼基於
function sendData(postData, url){
var response = apiCall(postData,url);
console.log(response.email)
console.log(response.count);
}
function apiCall(postData, postUrl){
var response = {};
$http({
method : 'POST',
url : postUrl,
data : postData,
headers : {'Content-Type': 'application/json'}
}).success(function(data) {
console.log(data)
for (var attr in data) {
if (data.hasOwnProperty(attr)) response[attr] = data[attr];
}
});
return response;
}
PHP API
<?php
$_POST = json_decode(file_get_contents('php://input'), true);
$response = array();
$response['email'] = $_POST['oauth']['email'];
$response['type'] = $_POST['oauth']['type'];
echo json_encode($response);
?>
控制檯
對象{電子郵件響應數據。 com「,輸入:」google「}
請添加您的回覆數據。 – lin
當你已經在做'(var attr in data)'時,你真的需要這行'if(data.hasOwnProperty(attr))'嗎? – brk
@brk它檢查屬性,如果有空字段的屬性,那麼它不會將它分配給其他對象。 – SaMeEr