[英]get random key/value pairs from json objects javascript (p5.js)
如何從多個對象.json文件的數組中獲取隨機對象並獲取隨機鍵/值對?
我有一個p5.js腳本,可加載一個json文件,該文件包含多個對象的數組,每個對象具有11個鍵/值對。 我可以獲取隨機對象,但還需要獲取隨機鍵/值對以用作字符串。
我沒有足夠的代碼技能,無法找到一種在隨機對象和隨機鍵/值對之間進行隨機排序的方法。 有什么想法嗎?
提前致謝。
樣本json:
{
"entries": [
{
"area": "0",
"qtd": "3",
"author": "FERNANDES, C. E. de M.",
"title": "Fundamentos de física para geociências.",
"subTitle": "xxxxx",
"qtdPag": "v.",
"edition": "xxxxx",
"isbn": "ISBN 9788571931596.",
"edPlace": "Rio de Janeiro: Interciência, 2007.",
"cdu": "53 F363f Ac.1028543",
"areaKnow": "Pre-catalogação"
}
]
}
p5.js代碼:
var data;
var fontRegular;
function preload() {
fontRegular = loadFont("assets/RobotoMono-Medium.ttf");
data = loadJSON("assets/data-bce-final.json");
}
function setup() {
createCanvas(windowWidth, windowHeight);
setText();
setInterval(setText, 5000);
}
function setText() {
var entries = data.entries;
var randomEntries = entries[Math.floor(Math.random() * entries.length)]; // get random item
background(255);
noStroke();
fill(80, 227, 194);
fill(100);
textSize(30);
textFont(fontRegular);
text(
// random version
randomEntries.author + "\n" +
randomEntries.title + "\n" +
randomEntries.subTitle + "\n" + "\n" +
randomEntries.edPlace + "\n" +
randomEntries.areaKnow + "\n" + "\n" +
randomEntries.cdu, 50, 60, windowWidth - 150);
}
function draw() {
}
我相信您是說您想從您的entries
變量中獲取隨機條目。 如果是這種情況,您只需執行以下操作:
var randomEntries = Object.keys(entries)[Math.floor(Math.random() * entries.length)];
Object.keys()
函數將返回鍵的數組,您可以像其他任何數組一樣引用這些鍵。 然后,您可以使用隨機生成的鍵來獲取所需的值。 如果要獲取隨機值,請使用Object.values()
。
希望那是您要尋找的東西,因為措辭我不太確定。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.