그래서 내가하고있는 일은 json 파일에서 값을 가져와 무작위로 하나를 선택할 수 있도록 html 파일에 표시되도록 배열로 푸시하는 것입니다. 제가하는 데 문제는 배열이 비어있을 때 비어 있습니다 ... JavaScript
var quotes = [];
var authors = [];
function loadJSON(callback) {
var xobj = new XMLHttpRequest();
xobj.overrideMimeType("application/json");
xobj.open('GET', 'quotes.json', true);
xobj.onreadystatechange = function() {
if (xobj.readyState == 4 && xobj.status == "200") {
// Required use of an anonymous callback as .open will NOT return a value but simply returns undefined in asynchronous mode
callback(xobj.responseText);
}
};
xobj.send(null);
}
function init() {
loadJSON(function(response) {
// Parse JSON string into object
var data = JSON.parse(response);
for(var i in data){
var key = i;
var val = data[i];
quotes.push(key);
authors.push(val);
}
});
}
init();
var index = Math.floor(Math.random()* (quotes.length + 1));
document.getElementById("p1").innerHTML = "<span class=\"quotes\">“</span>" + quotes[index] + "<span class=\"quotes\">”</span>" + "<span id=\"author\">" + " – " + authors[index] + "</span";
그래서 내 init 함수에서 키와 배열에 발하지만 밀어 ... 뭔가 배열의 경우에도 비어있는 것처럼, 그것을 처리하는 것입니다 그것은 비어있는 것처럼 취급 ... 나는 이것이 JSON에서 매우 새로운 간단한 질문이지만 미안하다. 감사합니다
또한 마지막 ' span>에는'>'이 누락되었습니다. – Xufox
@Xufox ok 감사합니다. 그냥 복사 붙여 넣기 오류였습니다. –
init 함수 안에 마지막 두 줄을 넣으십시오. – Ayudh