.params到底是什么,它做什么

What exactly is .params and what does it do?

本文关键字:什么 是什么 params      更新时间:2023-09-26

我目前正在学习jQuery第4版,在那里我给出了一个接受一个文本输入的表单的例子。当提交时,表单会在jQuery文档中搜索输入的字符串,将其作为JSONP对象检索并显示。

在这个例子中,我得到了以下代码摘录

//more code
  var buildItem = function(item) {
    var title = item.name,
        args = [],
        output = '<li>';
    if (item.type == 'method' || !item.type) {
      if (item.signatures[0].params) {
        $.each(item.signatures[0].params, function(index, val) {
          args.push(val.name);
        });
      }
      title = (/^jQuery|deferred/).test(title) ? title : '.' + title;
      title += '(' + args.join(', ') + ')';
    } else if (item.type == 'selector') {
      title += ' selector';
    }
    output += '<h3><a href="' + item.url + '">' + title + '</a></h3>';
    output += '<div>' + item.desc + '</div>';
    output += '</li>';
    return output;
  };
//more code

我看不懂这句话

 $.each(item.signatures[0].params, function(index, val) {
              args.push(val.name);
            });

.params具体是做什么的?我理解它是从返回的对象中的签名中访问。params,但我在返回的对象中没有看到任何。params,我似乎也找不到任何关于。params的文档。

如有任何帮助,不胜感激。

jsFiddle可以在这里找到:http://jsfiddle.net/QPR4Z/2/

查看signatures[0]中的值-注意它是来自JSON请求的任意数据[用于jQuery API文档]。也就是说,"。Params "不做任何事情,除了作为正常的属性访问。尽管语法高亮显示,但不是保留词,并且没有特殊含义。


下面是一些相关的提取JSON来说明这一点:

"signatures":[
  { //  <-- i.e. signatures[0]
    "added":"1.8",
    "params":[    // <-- property called "params", which represents an array
                  //     of objects that describe the given parameter
      {"name":"selector","type":"Selector",..}
    ],
    ..
  },
  ..
]