精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

深入了解JavaScript中的for循環(huán)

開發(fā) 前端
鑒于種種缺陷,我們需要改進原先的 for 循環(huán)。但 ES6 不會破壞你已經(jīng)寫好的 JS 代碼。目前,成千上萬的 Web 網(wǎng)站依賴 for-in 循環(huán),其中一些網(wǎng)站甚至將其用于數(shù)組遍歷。如果想通過修正 for-in 循環(huán)增加數(shù)組遍歷支持會讓這一切變得更加混亂,因此,標(biāo)準(zhǔn)委員會在 ES6 中增加了一種新的循環(huán)語法來解決目前的問題,即 for-of 。

ECMAScript5(簡稱 ES5)中,有三種 for 循環(huán),分別是:

  • 簡單for循環(huán)

  • for-in

  • forEach

在2015年6月份發(fā)布的ECMAScript6(簡稱 ES6)中,新增了一種循環(huán),是:

  • for-of

下面我們就來看看這 4 種 for 循環(huán)。

[[182137]]

簡單 for 循環(huán)

下面先來看看大家最常見的一種寫法:

const arr = [1, 2, 3];
for(let i = 0; i < arr.length; i++) {
    console.log(arr[i]);
}

當(dāng)數(shù)組長度在循環(huán)過程中不會改變時,我們應(yīng)將數(shù)組長度用變量存儲起來,這樣會獲得更好的效率,下面是改進的寫法:

const arr = [1, 2, 3];
for(let i = 0, len = arr.length; i < len; i++) {
    console.log(arr[i]);
}

for-in

通常情況下,我們可以用 for-in 來遍歷一遍數(shù)組的內(nèi)容,代碼如下:

const arr = [1, 2, 3];
let index;
for(index in arr) {
    console.log("arr[" + index + "] = " + arr[index]);
}

一般情況下,運行結(jié)果如下:

arr[0] = 1
arr[1] = 2
arr[2] = 3

但這么做往往會出現(xiàn)問題。

for-in 的真相

for-in 循環(huán)遍歷的是對象的屬性,而不是數(shù)組的索引。因此, for-in 遍歷的對象便不局限于數(shù)組,還可以遍歷對象。例子如下:

const person = {
    fname: "san",
    lname: "zhang",
    age: 99
};
let info;
for(info in person) {
    console.log("person[" + info + "] = " + person[info]);
}

結(jié)果如下:

person[fname] = san
person[lname] = zhang
person[age] = 99

需要注意的是, for-in 遍歷屬性的順序并不確定,即輸出的結(jié)果順序與屬性在對象中的順序無關(guān),也與屬性的字母順序無關(guān),與其他任何順序也無關(guān)。

Array 的真相

Array 在 Javascript 中是一個對象, Array 的索引是屬性名。事實上, Javascript 中的 “array” 有些誤導(dǎo)性, Javascript 中的 Array 并不像大部分其他語言的數(shù)組。首先, Javascript 中的 Array 在內(nèi)存上并不連續(xù),其次, Array 的索引并不是指偏移量。實際上, Array 的索引也不是 Number 類型,而是 String 類型的。我們可以正確使用如 arr[0] 的寫法的原因是語言可以自動將 Number 類型的 0 轉(zhuǎn)換成 String 類型的 "0" 。所以,在 Javascript 中從來就沒有 Array 的索引,而只有類似 "0" 、 "1" 等等的屬性。有趣的是,每個 Array 對象都有一個 length 的屬性,導(dǎo)致其表現(xiàn)地更像其他語言的數(shù)組。但為什么在遍歷 Array 對象的時候沒有輸出 length 這一條屬性呢?那是因為 for-in 只能遍歷“可枚舉的屬性”, length 屬于不可枚舉屬性,實際上, Array 對象還有許多其他不可枚舉的屬性。

現(xiàn)在,我們再回過頭來看看用 for-in 來循環(huán)數(shù)組的例子,我們修改一下前面遍歷數(shù)組的例子:

const arr = [1, 2, 3];
arr.name = "Hello world";
let index;
for(index in arr) {
    console.log("arr[" + index + "] = " + arr[index]);
}

運行結(jié)果是:

arr[0] = 1
arr[1] = 2
arr[2] = 3
arr[name] = Hello world

我們看到 for-in 循環(huán)訪問了我們新增的 "name" 屬性,因為 for-in 遍歷了對象的所有屬性,而不僅僅是“索引”。同時需要注意的是,此處輸出的索引值,即 "0"、 "1"、 "2"不是 Number 類型的,而是 String 類型的,因為其就是作為屬性輸出,而不是索引。那是不是說不在我們的 Array 對象中添加新的屬性,我們就可以只輸出數(shù)組中的內(nèi)容了呢?答案是否定的。因為 for-in 不僅僅遍歷 array 自身的屬性,其還遍歷 array 原型鏈上的所有可枚舉的屬性。下面我們看個例子:

Array.prototype.fatherName = "Father";
const arr = [1, 2, 3];
arr.name = "Hello world";
let index;
for(index in arr) {
    console.log("arr[" + index + "] = " + arr[index]);
}

運行結(jié)果是:

arr[0] = 1
arr[1] = 2
arr[2] = 3
arr[name] = Hello world
arr[fatherName] = Father

寫到這里,我們可以發(fā)現(xiàn) for-in 并不適合用來遍歷 Array 中的元素,其更適合遍歷對象中的屬性,這也是其被創(chuàng)造出來的初衷。卻有一種情況例外,就是稀疏數(shù)組。考慮下面的例子:

let key;
const arr = [];
arr[0] = "a";
arr[100] = "b";
arr[10000] = "c";
for(key in arr) {
    if(arr.hasOwnProperty(key)  &&    
        /^0$|^[1-9]\d*$/.test(key) &&    
        key <= 4294967294               
        ) {
        console.log(arr[key]);
    }
}

for-in 只會遍歷存在的實體,上面的例子中, for-in 遍歷了3次(遍歷屬性分別為"0"、 "100"、 "10000"的元素,普通 for 循環(huán)則會遍歷 10001 次)。所以,只要處理得當(dāng), for-in 在遍歷 Array 中元素也能發(fā)揮巨大作用。

為了避免重復(fù)勞動,我們可以包裝一下上面的代碼:

function arrayHasOwnIndex(array, prop) {
    return array.hasOwnProperty(prop) && 
        /^0$|^[1-9]\d*$/.test(prop) && 
        prop <= 4294967294; // 2^32 - 2
}

使用示例如下:

for (let key in arr) {
    if (arrayHasOwnIndex(arr, key)) {
        console.log(arr[key]);
    }
}

for-in 性能

正如上面所說,每次迭代操作會同時搜索實例或者原型屬性, for-in 循環(huán)的每次迭代都會產(chǎn)生更多開銷,因此要比其他循環(huán)類型慢,一般速度為其他類型循環(huán)的 1/7。因此,除非明確需要迭代一個屬性數(shù)量未知的對象,否則應(yīng)避免使用 for-in 循環(huán)。如果需要遍歷一個數(shù)量有限的已知屬性列表,使用其他循環(huán)會更快,比如下面的例子:

const obj = {
    "prop1": "value1",
    "prop2": "value2"
};

const props = ["prop1", "prop2"];
for(let i = 0; i < props.length; i++) {
    console.log(obj[props[i]]);
}

上面代碼中,將對象的屬性都存入一個數(shù)組中,相對于 for-in 查找每一個屬性,該代碼只關(guān)注給定的屬性,節(jié)省了循環(huán)的開銷和時間。

forEach

在 ES5 中,引入了新的循環(huán),即 forEach 循環(huán)。

const arr = [1, 2, 3];
arr.forEach((data) => {
    console.log(data);
});

運行結(jié)果:

1
2
3

forEach 方法為數(shù)組中含有有效值的每一項執(zhí)行一次 callback 函數(shù),那些已刪除(使用 delete 方法等情況)或者從未賦值的項將被跳過(不包括那些值為 undefined 或 null 的項)。 callback 函數(shù)會被依次傳入三個參數(shù):

  • 數(shù)組當(dāng)前項的值;

  • 數(shù)組當(dāng)前項的索引;

  • 數(shù)組對象本身;

需要注意的是,forEach 遍歷的范圍在***次調(diào)用 callback 前就會確定。調(diào)用forEach 后添加到數(shù)組中的項不會被 callback 訪問到。如果已經(jīng)存在的值被改變,則傳遞給 callback 的值是 forEach 遍歷到他們那一刻的值。已刪除的項不會被遍歷到。

const arr = [];
arr[0] = "a";
arr[3] = "b";
arr[10] = "c";
arr.name = "Hello world";
arr.forEach((data, index, array) => {
    console.log(data, index, array);
});

運行結(jié)果:

a 0 ["a", 3: "b", 10: "c", name: "Hello world"]
b 3 ["a", 3: "b", 10: "c", name: "Hello world"]
c 10 ["a", 3: "b", 10: "c", name: "Hello world"]

這里的 index 是 Number 類型,并且也不會像 for-in 一樣遍歷原型鏈上的屬性。

所以,使用 forEach 時,我們不需要專門地聲明 index 和遍歷的元素,因為這些都作為回調(diào)函數(shù)的參數(shù)。

另外,forEach 將會遍歷數(shù)組中的所有元素,但是 ES5 定義了一些其他有用的方法,下面是一部分:

  • every: 循環(huán)在***次 return false 后返回

  • some: 循環(huán)在***次 return true 后返回

  • filter: 返回一個新的數(shù)組,該數(shù)組內(nèi)的元素滿足回調(diào)函數(shù)

  • map: 將原數(shù)組中的元素處理后再返回

  • reduce: 對數(shù)組中的元素依次處理,將上次處理結(jié)果作為下次處理的輸入,***得到最終結(jié)果。

forEach 性能

首先感謝@papa pa的提醒,才發(fā)現(xiàn)我之前的理解有錯誤。

大家可以看 jsPerf ,在不同瀏覽器下測試的結(jié)果都是 forEach 的速度不如 for。如果大家把測試代碼放在控制臺的話,可能會得到不一樣的結(jié)果,主要原因是控制臺的執(zhí)行環(huán)境與真實的代碼執(zhí)行環(huán)境有所區(qū)別。

for-of

先來看個例子:

const arr = ['a', 'b', 'c'];
for(let data of arr) {
    console.log(data);
}

運行結(jié)果是:

a
b
c

為什么要引進 for-of?

要回答這個問題,我們先來看看ES6之前的 3 種 for 循環(huán)有什么缺陷:

  • forEach 不能 break 和 return;

  • for-in 缺點更加明顯,它不僅遍歷數(shù)組中的元素,還會遍歷自定義的屬性,甚至原型鏈上的屬性都被訪問到。而且,遍歷數(shù)組元素的順序可能是隨機的。

所以,鑒于以上種種缺陷,我們需要改進原先的 for 循環(huán)。但 ES6 不會破壞你已經(jīng)寫好的 JS 代碼。目前,成千上萬的 Web 網(wǎng)站依賴 for-in 循環(huán),其中一些網(wǎng)站甚至將其用于數(shù)組遍歷。如果想通過修正 for-in 循環(huán)增加數(shù)組遍歷支持會讓這一切變得更加混亂,因此,標(biāo)準(zhǔn)委員會在 ES6 中增加了一種新的循環(huán)語法來解決目前的問題,即 for-of 。

那 for-of 到底可以干什么呢?

  • 跟 forEach 相比,可以正確響應(yīng) break, continue, return。

  • for-of 循環(huán)不僅支持?jǐn)?shù)組,還支持大多數(shù)類數(shù)組對象,例如 DOM nodelist 對象。

  • for-of 循環(huán)也支持字符串遍歷,它將字符串視為一系列 Unicode 字符來進行遍歷。

  • for-of 也支持 Map 和 Set (兩者均為 ES6 中新增的類型)對象遍歷。

總結(jié)一下,for-of 循環(huán)有以下幾個特征:

  • 這是最簡潔、最直接的遍歷數(shù)組元素的語法。

  • 這個方法避開了 for-in 循環(huán)的所有缺陷。

  • 與 forEach 不同的是,它可以正確響應(yīng) break、continue 和 return 語句。

  • 其不僅可以遍歷數(shù)組,還可以遍歷類數(shù)組對象和其他可迭代對象。

但需要注意的是,for-of循環(huán)不支持普通對象,但如果你想迭代一個對象的屬性,你可以用 for-in 循環(huán)(這也是它的本職工作)。

***要說的是,ES6 引進的另一個方式也能實現(xiàn)遍歷數(shù)組的值,那就是 Iterator。上個例子:

const arr = ['a', 'b', 'c'];
const iter = arr[Symbol.iterator]();

iter.next() // { value: 'a', done: false }
iter.next() // { value: 'b', done: false }
iter.next() // { value: 'c', done: false }
iter.next() // { value: undefined, done: true }

不過,這個內(nèi)容超出了本文的范圍,而且 Iterator 要講的也有很多,以后有時間專門寫一篇文章介紹,歡迎關(guān)注。

責(zé)任編輯:張燕妮 來源: 編譯青春
相關(guān)推薦

2018-06-22 13:05:02

前端JavaScript引擎

2010-09-28 09:14:36

HTML DOMJavascript

2019-11-29 16:21:22

Spring框架集成

2024-04-12 07:51:05

SpringBean初始化

2010-11-19 16:22:14

Oracle事務(wù)

2020-09-21 09:53:04

FlexCSS開發(fā)

2009-08-25 16:27:10

Mscomm控件

2022-08-26 13:48:40

EPUBLinux

2010-06-23 20:31:54

2010-07-13 09:36:25

2024-03-07 16:12:46

Java字符串線程

2020-07-20 06:35:55

BashLinux

2023-06-06 15:31:13

JavaScript開發(fā)

2019-08-02 08:59:21

Token認(rèn)證服務(wù)器

2016-10-20 08:46:17

2018-02-24 13:21:02

2021-09-03 08:27:47

FortinetSASE平臺安全

2018-09-04 16:20:46

MySQ索引數(shù)據(jù)結(jié)構(gòu)

2013-04-10 11:16:19

iPad的MouseE

2011-07-18 15:08:34

點贊
收藏

51CTO技術(shù)棧公眾號

国产精品丝袜视频| 亚洲午夜国产成人av电影男同| 成人午夜免费剧场| 色婷婷综合视频| 日韩成人av影视| 色综合久久悠悠| 熟女俱乐部一区二区| a屁视频一区二区三区四区| 亚洲一区二区不卡免费| 四虎永久国产精品| 狠狠综合久久av一区二区| 日韩中文字幕不卡| 久久久女女女女999久久| 国产精品理论在线| 日韩精品福利一区二区三区| 欧美电影在线免费观看| 北条麻妃在线观看| 日本孕妇大胆孕交无码| 国产精品欧美一级免费| 精品午夜一区二区| 国产高清免费av| 免费看日韩精品| 国产69久久精品成人| 欧美黄色aaa| 欧美丝袜丝交足nylons172| 亚洲二区在线播放视频| 国产一区二区在线观看免费视频| 国产污视频在线播放| 一区二区三区免费| 这里只有精品66| 国产无套粉嫩白浆在线2022年| 成人av免费观看| 亚洲一区二区自拍| 正在播放亚洲精品| 久久aⅴ国产紧身牛仔裤| 欧美激情女人20p| 伊人在线视频观看| 久久五月天小说| 亚洲深夜福利在线| 久久中文字幕人妻| 国产精品毛片av| 日韩欧美国产小视频| 日本一二三四区视频| 香蕉久久一区| 欧美男生操女生| 日韩一级免费片| 欧美日韩激情电影| 在线视频欧美区| 国产精品亚洲a| 新片速递亚洲合集欧美合集| 欧美日韩视频免费播放| 国产中文字幕视频在线观看| sis001亚洲原创区| 亚洲第一久久影院| 久久99中文字幕| 极品美鲍一区| 一本色道**综合亚洲精品蜜桃冫| 免费在线a视频| 一个人www视频在线免费观看| 天天av天天翘天天综合网色鬼国产| 岛国大片在线播放| 黄色aa久久| 欧美性猛交xxxx久久久| 欧美激情精品久久久久久小说| 日本成人三级电影| 欧美图片一区二区三区| 91热视频在线观看| 视频精品国内| 日韩精品一二三四区| 一区二区黄色片| 欧美最新另类人妖| 久久精品视频99| 久久久久亚洲AV| 一本色道久久综合亚洲精品高清| 97成人在线视频| 69xxxx国产| 久草热8精品视频在线观看| 成人女保姆的销魂服务| 亚洲老妇色熟女老太| 972aa.com艺术欧美| 日韩av在线电影观看| 最新97超碰在线| 亚洲影院久久精品| 日本三级免费观看| 天天综合在线观看| 亚洲精品国偷自产在线99热 | 色999韩欧美国产综合俺来也| 欧美狂野另类xxxxoooo| v天堂中文在线| 成人6969www免费视频| 久热精品视频在线观看一区| 国产成人无码精品久久久久| 日韩极品在线观看| www国产亚洲精品| 久久久pmvav| 亚洲免费观看高清完整版在线| 国产真实老熟女无套内射| 欧美××××黑人××性爽| 日韩视频在线一区二区| 最近中文字幕免费视频| h网站在线免费观看| 欧美精品偷拍| 欧洲成人在线观看| 国产人妻精品一区二区三区| www一区二区| www.69av| 成人黄色毛片| 日韩精品日韩在线观看| 午夜免费激情视频| 日本vs亚洲vs韩国一区三区 | 国产视频一区二区视频| 一区二区三区视频播放| 日韩最新在线视频| 成人免费毛片视频| 成人av免费在线播放| 正义之心1992免费观看全集完整版| 黄色18在线观看| 日韩限制级电影在线观看| 91在线无精精品白丝| 亚洲三级观看| 91成人理论电影| av男人的天堂在线| 色综合夜色一区| 这里只有精品在线观看视频| 综合一区av| 国产精品一区二区三区久久久| 欧洲亚洲精品视频| 亚洲成av人影院在线观看网| 在线免费看v片| 欧美色图在线播放| 日本精品在线视频| 天天躁日日躁狠狠躁伊人| 一区二区三区在线看| 午夜免费看毛片| 不卡在线一区二区| 欧美在线视频a| 三级在线播放| 欧美日韩国产一区中文午夜| 久久人妻少妇嫩草av无码专区| 欧美日韩国产一区精品一区| 亚洲精品日产aⅴ| 日韩一级免费在线观看| 全球最大av网站久久| 国产午夜精品久久久| 国产精品第一页在线观看| 国产99久久久国产精品潘金网站| 99精品一区二区三区的区别| 国产精品美女久久久久| 久久中文精品视频| 国产亲伦免费视频播放| 亚洲色图制服诱惑| 五月天婷婷在线观看视频| 中文字幕亚洲精品乱码| 亚洲综合一区二区不卡| 18视频在线观看网站| 日韩精品中文字幕在线不卡尤物| 欧美日韩免费一区二区| 国产精品1区2区| 免费高清一区二区三区| 国产欧美三级电影| 国产91精品久久久久久久| 亚洲 欧美 自拍偷拍| 欧美三级免费观看| 欧美做受xxxxxⅹ性视频| 蜜桃av一区二区三区电影| 亚洲巨乳在线观看| 日韩精品久久久久久久软件91| 欧美激情综合色| 亚洲人午夜射精精品日韩| 欧美在线视频全部完| 国产真人真事毛片视频| 国产美女娇喘av呻吟久久| 日本大片免费看| 久久不见久久见国语| 成人观看高清在线观看免费| 午夜dj在线观看高清视频完整版| 亚洲国产精品中文| 国产免费www| 亚洲久草在线视频| 午夜av免费看| 久久精品国产网站| 久久99久久99精品| 超碰成人久久| 99在线免费观看视频| 第一福利在线视频| 一区二区福利视频| 97精品人妻一区二区三区在线 | 亚洲综合资源| 久久久综合免费视频| 国产高清美女一级毛片久久| 欧美精品vⅰdeose4hd| 日产精品久久久久| 中文字幕欧美一区| 免费无码一区二区三区| 久久99国产精品免费| 免费看一级大黄情大片| 91欧美国产| 国产综合欧美在线看| 免费视频观看成人| 欧美激情在线播放| 欧美成人三区| 日韩精品视频中文在线观看| 一二三区在线播放| 欧美性猛交xxxx乱大交3| 日本在线一级片| 久久久久久久久久久电影| 精品国产一二区| 久久国产福利国产秒拍| 国产真实乱子伦| 欧美精品18| 一区二区免费在线观看| 猛男gaygay欧美视频| 国产区一区二区| 国产一区二区三区黄网站| 国产精品盗摄久久久| 国产后进白嫩翘臀在线观看视频| 中文字幕日韩有码| 香蕉视频免费看| 精品国产乱码久久久久久老虎 | 大胆亚洲人体视频| 国产永久免费网站| 欧美aⅴ一区二区三区视频| 成人黄色av片| 极品av少妇一区二区| 女女百合国产免费网站| 日韩欧美一区二区三区免费看| 久久久一本精品99久久精品66 | 亚洲成人动漫在线播放| 99国产精品欲| 91精品国模一区二区三区| 中文字幕理论片| 一本高清dvd不卡在线观看| 91香蕉在线视频| 图片区小说区区亚洲影院| 久久久久久av无码免费网站| 尤物视频一区二区| 91视频综合网| 亚洲欧洲精品一区二区三区| 美女福利视频网| 国产精品久久久久久久久果冻传媒| 久久久久久九九九九九| 国产亚洲欧美日韩俺去了| 日本一级免费视频| 国产清纯白嫩初高生在线观看91 | 国产一级免费片| 国产99久久久国产精品潘金网站| 少妇高潮一69aⅹ| 国产·精品毛片| 91超薄肉色丝袜交足高跟凉鞋| 成人综合在线观看| 国产高清成人久久| 91网上在线视频| 在线不卡av电影| 中文字幕乱码久久午夜不卡 | 91精品啪在线观看国产18| 欧美精品一区二区性色a+v| 欧美视频导航| www.亚洲视频.com| 日韩一级精品| 亚洲国产精品毛片av不卡在线| 蜜臀国产一区二区三区在线播放| 五月婷婷六月丁香激情| 国产精品99久久久久久久女警| 美女露出粉嫩尿囗让男人桶| 97精品电影院| 性猛交ⅹxxx富婆video| 中文字幕亚洲区| 欧美三级小视频| 午夜电影一区二区三区| 亚洲欧美日韩激情| 538在线一区二区精品国产| 丰满人妻av一区二区三区| 亚洲开心激情网| 在线视频三区| 欧美精品国产精品日韩精品| 在线中文字幕播放| 国产精品久久77777| 亚洲日本免费电影| 国产在线精品一区二区三区》 | 91一区二区在线观看| 中文字幕免费在线看线人动作大片| 日韩一区中文字幕| av大片在线免费观看| 欧美人与禽zozo性伦| 亚洲欧美高清视频| 亚洲性线免费观看视频成熟| 影音先锋中文在线视频| 国产91色在线|免| 伊人精品综合| 色之综合天天综合色天天棕色| 欧美激情aⅴ一区二区三区| av片中文字幕| 高清成人在线观看| 毛片视频免费播放| 无码av免费一区二区三区试看| 一级特黄aaaaaa大片| 日韩电视剧免费观看网站| 国产精品久久久久久福利| 26uuu另类亚洲欧美日本老年| 国产精品视频一区二区三区综合| 精选一区二区三区四区五区| 欧美一区高清| 特级丰满少妇一级| 91片黄在线观看| 欧美成人精品激情在线视频| 欧美三级电影精品| 神马电影在线观看| 精品综合久久久久久97| 精品三级在线| 欧美性天天影院| 在线亚洲观看| 国产白袜脚足j棉袜在线观看| 中文字幕中文字幕一区二区| 亚洲欧美综合另类| 日韩精品中文字幕一区| 久操免费在线| 国产精品久久久久久久久久99| 精品福利一区| 男人添女人下部视频免费| 久久se这里有精品| xxx在线播放| 欧美午夜宅男影院在线观看| 亚洲精品无遮挡| 欧美精品免费看| 国产精品国产亚洲精品| 亚洲三区在线观看| 日本中文字幕一区| 亚洲av无码国产精品麻豆天美| 欧美日韩在线免费| 天天操天天干天天操| 欧美黑人xxxx| 草草视频在线一区二区| 亚洲啊啊啊啊啊| 国产九九视频一区二区三区| 亚洲欧美精品久久| 91超碰这里只有精品国产| 欧美另类极品| 国产专区欧美专区| 手机在线电影一区| 日本中文字幕精品—区二区| 中文一区在线播放| 怡红院男人的天堂| 最新中文字幕亚洲| 六九午夜精品视频| 亚洲免费av网| 国产一区二区电影| 九九热精品免费视频| 欧美成人艳星乳罩| 国产ktv在线视频| 久久99精品久久久久久青青日本| 国产欧美精品| 国产aⅴ激情无码久久久无码| 在线观看国产一区二区| a黄色在线观看| 成人免费看黄网站| 综合久久一区| 欲求不满的岳中文字幕| 好吊成人免视频| 91在线网址| 亚洲一区二区三区视频| 亚洲二区精品| 成人在线一级片| 欧美久久久久久久久久| 日本资源在线| 你懂的视频在线一区二区| 人人爽香蕉精品| 极品魔鬼身材女神啪啪精品| 欧美不卡激情三级在线观看| 欧美激情20| 亚洲一区二区精品在线观看| 国产美女主播视频一区| 日本三级欧美三级| 永久免费毛片在线播放不卡| 日韩在线观看中文字幕| 97成人在线观看视频| 国产精品久久777777| 性生活黄色大片| 国产91在线播放精品91| 亚洲精品tv久久久久久久久久| 日本精品一二三区| 欧美亚洲日本一区| 美女精品导航| 五月天亚洲综合| 成人永久aaa| 黄色av网站免费观看| 欧美成aaa人片在线观看蜜臀| 秋霞综合在线视频| 天堂中文av在线| 第一福利永久视频精品| 二区三区四区高清视频在线观看| 久久精品aaaaaa毛片| 精品一区二区免费看| 国产一级免费观看| 综合网中文字幕| 加勒比视频一区| 图片区乱熟图片区亚洲| 日韩欧美在线免费观看| 性爱视频在线播放| 亚洲mv在线看| 99精品视频在线免费观看|