var prices=$inventory.find('td:nth-child(3)')
.map(function(index,qty){
return $(qty).text();
}).get();
问:我知道get()用于获取文档元素,但放在这里是何意? map具体返回什么?
jquery map和get方法理解?
答案:2 悬赏:40 手机版
解决时间 2021-03-07 02:50
- 提问者网友:寂寞梧桐
- 2021-03-06 07:52
最佳答案
- 五星知识达人网友:梦中风几里
- 2021-03-06 08:59
1.代码如下:
var arrayObj=["www","xxx","ddd"];
var ww=$.map(arrayObj,function(i){
return i;
}).join(",");
console.log(ww);
var tt=$(":checkbox").map(function(){
return this.value;
}).get().join(",");
console.log(tt);
2.jQuery下有个概念叫“类数组”,比如$(":checkbox"),
当取到一个集合的时候,会有数组的一些属性,但是instancseof Array仍然是false。但是var a=$( "li"
).get()这样处理一下,然后instancseof Array就返回true。
3.map()的功能主要有两步,第一步就是遍历,第二步就是替换。
4.instanceof和typeof都能用来判断一个变量是否为空或是什么类型的变量。
typeof用以获取一个变量的类型,typeof一般只能返回如下几个结果:number,boolean,string,function,object,undefined。 可以使用typeof来获取一个变量是否存在,如if(typeof
a!="undefined"){},而不使用if(a)因为如果a不存在(未声明)则会出错,对于Array,Null等特殊对象使用typeof
一律返回object,这是typeof的局限性。
5.如果我们希望获取一个对象是否是数组,或判断某个变量是否是某个对象的实例则要选择使用instanceof。instanceof用于判断一个变
量是否某个对象的实例,如var a=new Array();alert(a instanceof
Array);会返回true,同时alert(a instanceof
Object)也会返回true;这是因为Array的prototype是Object。再如:function test(){};var
a=new test();alert(a instanceof test)会返回true。
var arrayObj=["www","xxx","ddd"];
var ww=$.map(arrayObj,function(i){
return i;
}).join(",");
console.log(ww);
var tt=$(":checkbox").map(function(){
return this.value;
}).get().join(",");
console.log(tt);
2.jQuery下有个概念叫“类数组”,比如$(":checkbox"),
当取到一个集合的时候,会有数组的一些属性,但是instancseof Array仍然是false。但是var a=$( "li"
).get()这样处理一下,然后instancseof Array就返回true。
3.map()的功能主要有两步,第一步就是遍历,第二步就是替换。
4.instanceof和typeof都能用来判断一个变量是否为空或是什么类型的变量。
typeof用以获取一个变量的类型,typeof一般只能返回如下几个结果:number,boolean,string,function,object,undefined。 可以使用typeof来获取一个变量是否存在,如if(typeof
a!="undefined"){},而不使用if(a)因为如果a不存在(未声明)则会出错,对于Array,Null等特殊对象使用typeof
一律返回object,这是typeof的局限性。
5.如果我们希望获取一个对象是否是数组,或判断某个变量是否是某个对象的实例则要选择使用instanceof。instanceof用于判断一个变
量是否某个对象的实例,如var a=new Array();alert(a instanceof
Array);会返回true,同时alert(a instanceof
Object)也会返回true;这是因为Array的prototype是Object。再如:function test(){};var
a=new test();alert(a instanceof test)会返回true。
全部回答
- 1楼网友:青灯有味
- 2021-03-06 10:34
$(function() {
var $inventory = $("#inventory");
var prices = $inventory
// 获取 table 中每行第三个 td
.find('td:nth-child(3)')
// 使用 map 对每一个 td 进行处理
// function 为回调函数, index 为键值
// qty 为每个元素中的此元素
// 此回调函数返回每个元素的 text
// map 将返回对象集合
// object["¥200", "¥260", "¥130"]
.map(function(index, qty) {
return $(qty).text();
})
// 将对象集合转换为数组
.get();
// 数组:["¥200", "¥260", "¥130"]
console.log(prices);
});<p>
</p> <table border="1" id="inventory">
<tr><td>iphone</td><td>4</td><td>¥200</td></tr>
<tr><td>iphone</td><td>5</td><td>¥260</td></tr>
<tr><td>iphone</td><td>6</td><td>¥130</td></tr>
</table>
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯