什么是function(json)json参数,是sample.json文件吗?什么是val参数?在一些例子中,var键的外观如何?函数作为参数如何在此示例代码中起作用?
$.getJSON("sample.json", function(json) {
json.forEach(function(val) {
var keys = Object.keys(val);
答案 0 :(得分:2)
$.getJSON("sample.json", function(json) {
$.getJSON
获取一个名为" sample.json" 的json文档,此文档分配在" json" 你的职能范围内是强>变量。
json.forEach(function(val) {
由于JSON是" JavaScript Object Notation",我们知道您的变量 json 是对象,这就是您可以使用的原因函数Object.forEach()
,它用作for..in..
,
var keys = Object.keys(val);
Object.keys(val)
此处,您的变量 val 必须是对象或数组,此方法将返回< / strong>对象/数组中的所有索引( val ),因此,索引您在文档中记录的json < strong>&#34; sample.json&#34; ,将添加到变量keys
。
例如:
$.getJSON("/json/sample.json", function(json) {
var html = "";
json.forEach(function(val) { // Iterates in the json
var keys = Object.keys(val); // Assignes the indexes to the var keys
html += "<div>"; // Opens and appends a div element
keys.forEach(function(key) { // Appends the element of the object/array at each index (key)
html += "<strong>" + key + "</strong>"
});
html += "</div><br>"; // Closes the div element and starts a new line
});
答案 1 :(得分:0)
该函数只是一个回调函数,因此一旦获取并解析了sample.json文件,它将运行函数中的代码,使用&#39; json&#39;作为参考变量
答案 2 :(得分:0)
JQuery $.getJSON()
方法的结果是JavaScript Object Notation结构。该响应自动作为第一个参数(在本例中为json
)传递给提供的成功回调函数。它不必被称为json
,它只是参数的任意名称,你可以称之为任何合法的标识符。
接收到参数后,结构将以.forEach()
遍历,其中提供另一个函数作为每个遍历项目的回调。
答案 3 :(得分:0)
在该示例中,json
是将传递给getJSON
回调的第一个参数的参数名称。这将是解析 JSON的结果(因此不再是JSON,它将是一个对象图)。
代码期望JSON将数组定义为顶级项,并且正在调用Array.prototype.forEach
。 val
参数 - forEach
的第一个参数 - 将按顺序显示该数组中的每个元素。
jQuery documentation,MDN和For-each over an array in JavaScript?中的更多内容。