<ul>
<li>11</li>
<li>22</li>
<li>33</li>
</ul>
<script>
let lis = document.querySelectorAll('li');
console.log([...lis]);
let liC= Array.from(lis,ele=>ele.textContent);
console.log(liC);
</script>
结果:
问题:
1.lis,ele=>ele.textContent
中我把ele.textContent
换成了lis.textContent
结果出来的是一个undefine的集合,是为什么?
2.lis,ele=>ele.textContent
我是否可以理解为Array.from(arr,function)
,然后返回元素的文本内容?
3.该怎么理解lis和ele之间的关系呢?(因为看到很多案例都是说from可以传入两个参数,但是好像返回的都是第二个参数的东西,这一块不是很理解)
理论知识学的很浅,上手就有点迷茫,感谢帮忙指导,帮我恶补,非常感谢
有这三个问题是因为对JS基础语法不清晰以及不明白
from()
用法:from() 方法用于通过拥有 length 属性的对象或可迭代的对象来返回一个数组。
或者说:
Array.from() 静态方法从可迭代或类数组对象创建一个新的浅拷贝的数组实例。
语法
参数
arrayLike
想要转换成数组的类数组或可迭代对象。
mapFn 可选
调用数组每个元素的函数。如果提供,每个将要添加到数组中的值首先会传递给该函数,然后将 mapFn 的返回值增加到数组中。使用以下参数调用该函数:
element
数组当前正在处理的元素。
index
数组当前正在处理的元素的索引。
thisArg 可选
执行 mapFn 时用作 this 的值。