使用jquery/javascript从解析的json中使用键检索值
使用一个函数(如下),我试图通过传入的region和house type参数从JSON数据(如下)中获取平均房价。 我可以对传入的“regionName”进行重新评分和匹配,但是我正在努力对房屋类型(我相信是数据中的关键)进行评分,以便将其与传入的变量“literalHouseType”进行匹配,目的是获得该房屋类型的价格。 正如您可能知道的,函数一直工作到它与第一个循环中的区域匹配的点,之后我就卡住了。 我不是一个热心的程序员,所以任何类型的帮助都是很好的。提前谢谢使用jquery/javascript从解析的json中使用键检索值,jquery,json,Jquery,Json,使用一个函数(如下),我试图通过传入的region和house type参数从JSON数据(如下)中获取平均房价。 我可以对传入的“regionName”进行重新评分和匹配,但是我正在努力对房屋类型(我相信是数据中的关键)进行评分,以便将其与传入的变量“literalHouseType”进行匹配,目的是获得该房屋类型的价格。 正如您可能知道的,函数一直工作到它与第一个循环中的区域匹配的点,之后我就卡住了。 我不是一个热心的程序员,所以任何类型的帮助都是很好的。提前谢谢 var jSonData
var jSonData = JSON.stringify([ {
"Region_Name": "England",
"Detached_Average_Price": "357425.4953",
"Semi_Detached_Average_Price": "219615.157",
"Terraced_Average_Price": "190095.3402",
"Flat_Average_Price": "222355.8556" },
{"Region_Name": "Scotland",
"Detached_Average_Price": "252491.6457",
"Semi_Detached_Average_Price": "152351.671",
"Terraced_Average_Price": "121237.8809",
"Flat_Average_Price": "104417.6462" }
使用的功能:
var jSondata = jQuery.parseJSON(jSonData);
$( document ).ready(function() {
GetAveragePriceByHouseTypeAndRegion("Detached_Average_Price", "England");
});
function GetAveragePriceByHouseTypeAndRegion(literalHouseType, regionName) {
for (var i = 0; i < jSondata.length; i++) {
if (jSondata[i].Region_Name === regionName) {
for (var j = 0; j < Object.keys(jSondata[i]).length; j++) {
if (Object.keys(jSondata[i]).value === literalHouseType) {
//stuck here..
}
}
};
}
var jSondata=jQuery.parseJSON(jSondata);
$(文档).ready(函数(){
GetAveragePriceByHouseType andRegion(“独立平均价格”,“英格兰”);
});
函数GetAveragePriceByHouseType和Region(literalHouseType,regionName){
对于(var i=0;iliteralHouseType
看起来像“分离的”
或“半分离的”
:
var数据=[{
“地区名称”:“英格兰”,
“分离平均价格”:“357425.4953”,
“半成品平均价格”:“219615.157”,
“梯田平均价格”:“190095.3402”,
“公寓平均价格”:“222355.8556”
},
{
“地区名称”:“苏格兰”,
“分离平均价格”:“252491.6457”,
“半成品平均价格”:“152351.671”,
“梯田平均价格”:“121237.8809”,
“平均价”:“104417.6462”
}
];
函数GetAveragePriceByHouseType和Region(literalHouseType,regionName){
对于(变量i=0;i console.log(GetAveragePriceByHouseType andregion(“Semi_Detached”,“Scotland”))//152351.671
literalHouseType的示例值是多少??您好,我已经更新了snippetFair play smarx,这是一个快速回复。因此,第一个选项非常有效,第二个重构的选项在返回时给了我一个错误:jSondata[regionName][literalHouseType];您是否更改了数据的形状以匹配我的?不,我的错,忘记了那部分…::但是,您投了赞成票并接受了答案,谢谢您的帮助,非常感谢。