簡體   English   中英

在Jquery / javascript中理解控制台中的“切片”

[英]understanding “slice” in console in Jquery/javascript

我正在解構一個名為Unslider.js的carasoul插件,並且我很難理解一些代碼,因此在這里我處於堆棧溢出狀態。

我的困難是理解以下內容:

target = li.eq(index);

讓我們分析一下

目標是一個變量。

li是一個對象,實際上讓我弄清楚li是什么,之前在代碼中使用Jquery中的find()方法返回了一組子元素,因此li基本上是一組<li>元素。

接下來, eq通常用於進一步過濾元素。

索引當然是當前元素(盡管我不確定這種解釋)。

所以基本上我理解以下內容:

        target = li.eq(index);

目標是當前的li元素,是的,我是這樣認為的。

好吧,讓我繼續我真正的困難是什么,當我console.log(target)時,我得到以下結果:

"taget is" unslider.js:285
Object { length: 0, prevObject: Object, context: <div.banner>, selector: ">ul >li.slice(3,4)" } unslider.js:286
"taget is" unslider.js:285
Object { 0: <li>, length: 1, prevObject: Object, context: <div.banner>, selector: ">ul >li.slice(1,2)" } unslider.js:286
"taget is" unslider.js:285
Object { 0: <li>, length: 1, prevObject: Object, context: <div.banner>, selector: ">ul >li.slice(2,3)" } unslider.js:286
"taget is" unslider.js:285
Object { length: 0, prevObject: Object, context: <div.banner>, selector: ">ul >li.slice(3,4)" } unslider.js:286
"taget is" unslider.js:285
Object { 0: <li>, length: 1, prevObject: Object, context: <div.banner>, selector: ">ul >li.slice(1,2)" } unslider.js:286
"taget is" unslider.js:285
Object { 0: <li>, length: 1, prevObject: Object, context: <div.banner>, selector: ">ul >li.slice(2,3)" } unslider.js:286
"taget is" unslider.js:285
Object { length: 0, prevObject: Object, context: <div.banner>, selector: ">ul >li.slice(3,4)" } unslider.js:286
"taget is" unslider.js:285
Object { 0: <li>, length: 1, prevObject: Object, context: <div.banner>, selector: ">ul >li.slice(1,2)" } unslider.js:286
"taget is" unslider.js:285
Object { 0: <li>, length: 1, prevObject: Object, context: <div.banner>, selector: ">ul >li.slice(2,3)" } unslider.js:286
"taget is" unslider.js:285
Object { length: 0, prevObject: Object, context: <div.banner>, selector: ">ul >li.slice(3,4)" } unslider.js:286
"taget is" unslider.js:285
Object { 0: <li>, length: 1, prevObject: Object, context: <div.banner>, selector: ">ul >li.slice(1,2)" }

現在這行是什么意思..

selector: ">ul >li.slice(3,4)", 

我的意思是slice(3,4)部分,該部分以不同的值不斷變化! 如果有人可以來解釋那是一件很棒的事。

謝謝。

亞歷山大。

Slice用於返回數組的子集。 在這種情況下,值始終由1分隔,因此它將返回單個元素的數組。

var li = ['a','b','c','d'];
console.log(li.slice(2,3));
>  ['c']

因此,這只是從列表中選擇一個元素的一種方法,但通常也適用於選擇一系列元素。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM