Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 获取随机json对象_Javascript_Jquery - Fatal编程技术网

Javascript 获取随机json对象

Javascript 获取随机json对象,javascript,jquery,Javascript,Jquery,我想得到随机的hotelCode(例如CUNMXSAKU但随机)对象。 是否可以在javaScript或Jquery中随机使用此对象 我的JSON: var simulatedHotelCodes = { "CUNMXSAKU" : { "roomCodes" : "DEAL, JRST, JPOV, JSSW, PJRS, PJOV, PJSW, RMOV, RMOF, PRES" },

我想得到随机的hotelCode(例如CUNMXSAKU但随机)对象。 是否可以在javaScript或Jquery中随机使用此对象

我的JSON:

    var simulatedHotelCodes = {
            "CUNMXSAKU" : {
                "roomCodes" : "DEAL, JRST, JPOV, JSSW, PJRS, PJOV, PJSW, RMOV, RMOF, PRES"
            },
            "CUNMXMAYA" : {
                "roomCodes" : "ROAI, FVAI, DXAI, CAAI, SUAI, CABA, SIGA, PRAI, POFA, ROOM, FMVW, DELX, CASA, SUIT, CASI, SIGN, PROF, PROFS"
            },
            "CUNMXDPAV" : {
                "roomCodes" : "GDVW, MRNA, FMLY, DFAM, HNDO, OCVW, DOLP, FMOV, PCDO, HNOC, PCOV, PFOV, ROHO"
            },
            "CUNMXHIDD" : {
                "roomCodes" : "JRST, JRSU, DOME"
            },
            "CUNMXDSAN" : {
                "roomCodes" : "DEAL, DELX, DEXBA, DXOF, DOFB, PROV, PROF, PROB, POFC, HONY, FAMI, PRJS, DEBL, PRDD"
            }
    };
输出:

"CUNMXMAYA" : {
                "roomCodes" : "ROAI, FVAI, DXAI, CAAI, SUAI, CABA, SIGA, PRAI, POFA, ROOM, FMVW, DELX, CASA, SUIT, CASI, SIGN, PROF, PROFS"
            }

随便
提前感谢

是的,这是可能的。但若您将这些对象放入数组中,以便可以通过数组索引访问这些对象,那个么就更容易了。由于数组索引是一个整数,所以可以随机生成该数组索引,然后访问该对象

是的,这是可能的。但若您将这些对象放入数组中,以便可以通过数组索引访问这些对象,那个么就更容易了。由于数组索引是一个整数,所以可以随机生成该数组索引,然后访问该对象

我将使用获取所有属性的数组,然后选择一个随机索引

var模拟酒店代码={
“CUNMXSAKU”:{
“房间代码”:“交易、JRST、JPOV、JSSW、PJRS、PJOV、PJSW、RMOV、RMOF、PRES”
},
“玛雅人”:{
“房间代码”:“ROAI、FVAI、DXAI、CAAI、SUAI、CABA、SIGA、PRAI、POFA、房间、FMVW、DELX、CASA、套装、CASI、标志、教授、教授”
},
“CUNMXDPAV”:{
“房间代码”:“GDVW、MRNA、FMLY、DFAM、HNDO、OCVW、DOLP、FMOV、PCDO、HNOC、PCOV、PFOV、ROHO”
},
“cunmxidd”:{
“房间代码”:“JRST、JRSU、DOME”
},
“CUNMXDSAN”:{
“房间代码”:“DEAL、DELX、DEXBA、DXOF、DOFB、PROV、PROF、PROB、POFC、HONY、FAMI、PRJS、DEBL、PRDD”
}
};
var properties=Object.getOwnPropertyNames(模拟酒店代码);
var index=Math.floor(Math.random()*properties.length);
var输出={};
输出[属性[索引]]=模拟酒店代码[属性[索引]];
控制台日志(输出)我将使用它获取所有属性的数组,然后选择一个随机索引

var模拟酒店代码={
“CUNMXSAKU”:{
“房间代码”:“交易、JRST、JPOV、JSSW、PJRS、PJOV、PJSW、RMOV、RMOF、PRES”
},
“玛雅人”:{
“房间代码”:“ROAI、FVAI、DXAI、CAAI、SUAI、CABA、SIGA、PRAI、POFA、房间、FMVW、DELX、CASA、套装、CASI、标志、教授、教授”
},
“CUNMXDPAV”:{
“房间代码”:“GDVW、MRNA、FMLY、DFAM、HNDO、OCVW、DOLP、FMOV、PCDO、HNOC、PCOV、PFOV、ROHO”
},
“cunmxidd”:{
“房间代码”:“JRST、JRSU、DOME”
},
“CUNMXDSAN”:{
“房间代码”:“DEAL、DELX、DEXBA、DXOF、DOFB、PROV、PROF、PROB、POFC、HONY、FAMI、PRJS、DEBL、PRDD”
}
};
var properties=Object.getOwnPropertyNames(模拟酒店代码);
var index=Math.floor(Math.random()*properties.length);
var输出={};
输出[属性[索引]]=模拟酒店代码[属性[索引]];

控制台日志(输出)如果您只关心现代浏览器,请检查@dave的答案,该答案更清晰(而且可能有更好的性能)。如果您想要跨浏览器解决方案,这里有一个选项:


请注意,您需要使用随机选择的关键点来使用obj。您可以更改此选项:

obj = {};
obj[key] = json[key];
为此:

obj = json[key];
仅保存随机项值


如果你只关心现代浏览器,请查看@dave的答案,该答案更简洁(而且它的性能可能更好)。如果您想要跨浏览器解决方案,这里有一个选项:


请注意,您需要使用随机选择的关键点来使用obj。您可以更改此选项:

obj = {};
obj[key] = json[key];
为此:

obj = json[key];
仅保存随机项值


我不知道
Object.getOwnPropertyNames()
它似乎非常有用。但是请记住,并非所有浏览器都支持它。我不知道
Object.getOwnPropertyNames()
它似乎非常有用。但是请记住,并非所有浏览器都支持它。