100个数据来自json数据引入页面随机生成五条数据
时间: 2023-05-21 20:06:37 浏览: 60
我理解你的问题是如何在页面中随机生成五条来自 JSON 数据的数据。正确吗?如果是,请看以下代码示例:
1. 首先将 JSON 数据存储到一个 JavaScript 对象中:
```
var data = {
"1": {
"name": "Amy",
"age": 23,
"gender": "female"
},
"2": {
"name": "John",
"age": 28,
"gender": "male"
},
"3": {
"name": "Lisa",
"age": 19,
"gender": "female"
},
"4": {
"name": "David",
"age": 35,
"gender": "male"
},
"5": {
"name": "Mary",
"age": 25,
"gender": "female"
},
// ...
};
```
2. 使用 JavaScript 的 Math.random() 方法随机生成五个数字,表示需要显示的数据对应的键名(key):
```
var keys = Object.keys(data); // 获取所有的键名
var randomKeys = []; // 存储随机生成的五个键名
while (randomKeys.length < 5) {
var randomIndex = Math.floor(Math.random() * keys.length);
var randomKey = keys[randomIndex]; // 随机选取一个键名
if (!randomKeys.includes(randomKey)) { // 避免重复
randomKeys.push(randomKey); // 存储键名
}
}
```
3. 根据上一步随机生成的五个键名,从对象中获取相应的值:
```
var randomData = []; // 存储随机生成的五条数据
for (var i = 0; i < randomKeys.length; i++) {
var key = randomKeys[i]; // 获取键名
var value = data[key]; // 获取对应的值
randomData.push(value); // 存储数据
}
```
4. 将随机生成的数据显示到页面上。这一步根据具体情况而定,如果你使用 jQuery,则可以使用以下代码:
```
$.each(randomData, function(index, item) {
var name = item.name;
var age = item.age;
var gender = item.gender;
var $tr = $('<tr><td>'+name+'</td><td>'+age+'</td><td>'+gender+'</td></tr>');
$('table').append($tr); // 显示数据到table中
});
```
希望这个代码能够帮到你!