猿问

jquery中get()方法的问题

<!DOCTYPE html><html><head>
  <style>p { color:red; }</style>
  <script type="text/javascript" src="/jquery/jquery.js"></script></head><body>
  <p><b>Values: </b></p>
  <form>
    <input type="text" name="name" value="John"/>
    <input type="text" name="password" value="password"/>
    <input type="text" name="url" value="http://w3school.com.cn/"/>
  </form><script>
    $("p").append( $("input").map(function(){      return $(this).val();
    }).get().join(", ") );</script></body></html>

在W3C上面看到的一个例子,对于里面的<script>不太理解。
我想问一下,为什么要在js代码里加一个get()方法呢?我看了下jquery的官方文档,get()方法的参数不是需要一个index吗,比如get(0),get(1)之类的。
我知道这段js代码一直到get()之前,目的就是把所有input的value包装成一个数组返回,然后join(',')连接成一个字符串,就是不理解这个为什么要加一个不带参的get()
求各位高人解答,谢谢啦(∩_∩)


梦里花落0921
浏览 711回答 1
1回答

慕容森

get之后变为非jQuery对象,才是你想要的值数组否则是jQuery对象 可以用&nbsp;for in&nbsp;把属性打印出来就知道了,还可以用instanceof检测是否是jQuery对象应该是为了链是调用这样子处理的吧你可以采用jQuery提供的&nbsp;$.map纯属个人这么认为
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答