我已經看到了網絡下面的例子從一個WCF服務中獲得一個JSON Product
對象到JS:嵌套的原型來自jQuery的
function Product(ProductName, ProductDesc, Price, Quantity) {
this.ProductName = ProductName;
this.ProductDesc = ProductDesc;
this.Price = Price;
this.Quantity = Quantity;
}
function CallWCFService(WCFServiceURL) {
$.ajax({
type: "GET",
url: WCFServiceURL,
contentType: "application/json; charset=utf-8",
dataType: 'json',
processdata: true,
success: function (msg) {
WCFServiceSucceeded(msg);
},
error: WCFServiceFailed
});
}
//On Successful WCF Service call
function WCFServiceSucceeded(result) {
var productsArray = new Array();
//Gets the Products
$.each(result, function (i, Product) {
productsArray[i]=Product;
});
//Print all the product details
$.each(productsArray,function(i,Product)
{
alert(Product.ProductName + ' ' + Product.ProductDesc + ' ' + Product.Price + ' ' + Product.Quantity)
});
}
現在,我不能說什麼是真的應該發生在這裏(我的知識在JavaScript和jQuery中是可怕的小),但我可以說,我想了解這個片段,爲了能夠修改它以包含嵌套類型,即:而不是產品名稱我們將擁有WCF服務響應中的列表屬性及其自己的字段。
現在,具體地,在這個例子中,我不明白的地方被稱爲Product
功能,它似乎是,它是在這裏:
//Gets the Products
$.each(result, function (i, Product) {
productsArray[i]=Product;
});
但對我來說似乎是不清楚Product是否存在作爲傳遞給$ .each的lambda的聲明參數的行爲,或者它是否實際調用了「構造函數」調用
您可以在此代碼中指導我嗎?