日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Javascript之ES7详解

發布時間:2025/3/17 java 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Javascript之ES7详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

ES7+ES8

前言

本篇文章主要介紹ES7+ES8的一些新功能,并結合ES6的一些API做出了相應的比較。

ES7

1.Array.prototype.includes()

includes()作用,是查找一個值在不在數組里,若是存在則返回true,不存在返回false.

1.基本用法:

['a', 'b', 'c'].includes('a') // true ['a', 'b', 'c'].includes('d') // false 復制代碼

2.接收倆個參數:要搜索的值和搜索的開始索引

['a', 'b', 'c', 'd'].includes('b') // true ['a', 'b', 'c', 'd'].includes('b', 1) // true ['a', 'b', 'c', 'd'].includes('b', 2) // false 復制代碼

3.與ES6中的indexOf()比較

有些時候是等效的

['a', 'b', 'c'].includes('a') //true ['a', 'b', 'c'].indexOf('a') > -1 //truevar arr = [1, 2, 3] var a = 1; arr.includes(a) //true arr.indexOf(a) //0 復制代碼
  • 在判斷 +0 與 -0 時,被認為是相同的。
[1, +0, 3, 4].includes(-0) //true [1, +0, 3, 4].indexOf(-0) //1 復制代碼
  • 只能判斷簡單類型的數據,對于復雜類型的數據,比如對象類型的數組,二維數組,這些,是無法判斷的.
var arr = [1, [2, 3], 4] arr.includes([2, 3]) //false arr.indexOf([2, 3]) //-1 復制代碼

優缺點比較

  • 簡便性

includes()返回的是布爾值,能直接判斷數組中存不存在這個值,而indexOf()返回的是索引,這一點上前者更加方便。

  • 精確性

    兩者都是采用===的操作符來作比較的,不同之處在于:對于NaN的處理結果不同。

    我們知道js中 NaN === NaN 的結果是false,indexOf()也是這樣處理的,但是includes()不是這樣的。

    let demo = [1, NaN, 2, 3]demo.indexOf(NaN) //-1 demo.includes(NaN) //true 復制代碼

總結:

由于它對NaN的處理方式與indexOf不同,假如你只想知道某個值是否在數組中而并不關心它的索引位置,建議使用includes()。如果你想獲取一個值在數組中的位置,那么你只能使用indexOf方法。

2.求冪運算符

基本用法:

3 ** 2 //9 效果同 Math.pow(3, 2) //9 復制代碼

由于是運算符,所以可以和 +=一樣的用法

var b = 3; b **= 2; console.log(b); //9 復制代碼

ES8

1.async await

異步函數async function()

1.1作用

避免有更多的請求操作,出現多重嵌套,也就是俗稱的“回調地獄”

this.$http.jsonp('/login', (res) => {this.$http.jsonp('/getInfo', (info) => {// do something}) }) 復制代碼

因此提出了ES6的Promise,將回調函數的嵌套,改為了鏈式調用:

var promise = new Promise((resolve, reject) => {this.login(resolve); }) .then(() => {this.getInfo() }) .catch(() => {console.log('Error') }) 復制代碼

1.2聲明方式

異步函數存在以下四種使用形式:

  • 函數聲明: async function foo() {}
  • 函數表達式: const foo = async function() {}
  • 對象的方式: let obj = { async foo() {} }
  • 箭頭函數: const foo = async () => {}

1.3支持返回Promise和同步的值

async用于定義一個異步函數,該函數返回一個Promise。 如果async函數返回的是一個同步的值,這個值將被包裝成一個理解resolve的Promise,等同于return Promise.resolve(value)。 await用于一個異步操作之前,表示要“等待”這個異步操作的返回值。await也可以用于一個同步的值。

//async await//返回Promiselet timer = async function timer() {return new Promise((reslove, reject) => {setTimeout(() => {reslove('a');}, 1000);})}timer().then(result => {console.log(result);}).catch(err => {console.log(err.message);})//返回同步的值let sayHello = async function sayHello() {let hi = 'hello world'//等同于return Promise.resolve(hi);return hi}sayHello().then(res => {console.log(res)}).catch(err => {console.log(err.message);}) 復制代碼

1.4對異常的處理

首先來看下Promise中對異常的處理

1.使用reject

let promise = new Promise((reslove, reject) => {setTimeout(() => {reject('promise使用reject拋出異常') }, 1000) }) promise().then(res => {console.log(res) }) .catch(err => {console.log(err) //'promise使用reject拋出異常' })復制代碼

2.使用new Error()

let promise = new Promise((reslove, reject) => {throw new Error('promise使用Error拋出異常') //使用throw異常不支持放在定時器中 }) promise().then(res => {console.log(res) }) .catch(err => {console.log(err.message) //'promise使用Error拋出異常' })復制代碼

3.reject一個new Error()

let promise = new Promise((resolve, reject) => {setTimeout(() => {reject(new Error('promise拋出異常'));}, 1000);})promise.then(res => {console.log(res);}).catch(err => {console.log(err.message); //'promise拋出異常'}) 復制代碼

async對異常的處理也可以直接用.catch()捕捉到

//async拋出異常let sayHi = async sayHi => {throw new Error('async拋出異常');}sayHi().then(res => {console.log(res);}).catch(err => {console.log(err.message);}) 復制代碼

和Promise鏈的對比:

我們的async函數中可以包含多個異步操作,其異常和Promise鏈有相同之處,如果有一個Promise被reject()那么后面的將不會再進行。

let count = () => {return new Promise((resolve, reject) => {setTimeout(() => {reject('promise故意拋出異常')}, 1000);})}let list = () => {return new Promise((resolve, reject) => {setTimeout(() => {resolve([1, 2, 3])}, 1000);})}let getList = async () => {let c = await count()console.log('async') //此段代碼并沒有執行let l = await list()return { count: c, list: l }}console.time('start');getList().then(res => {console.log(res)}).catch(err => {console.timeEnd('start')console.log(err)})//start: 1000.81494140625ms//promise故意拋出異常 復制代碼

可以看到上面的案例,async捕獲到了一個錯誤之后就會立馬進入.catch()中,不執行之后的代碼

1.5并行

上面的案例中,async采用的是串行處理

count()和list()是有先后順序的

let c = await count() let l = await list() 復制代碼

實際用法中,若是請求的兩個異步操作沒有關聯和先后順序性可以采用下面的做法

let res = await Promise.all([count(), list()]) return res//res的結果為 //[ 100, [ 1, 2, 3 ] ] 復制代碼

案例詳情為:

let count = ()=>{return new Promise((resolve,reject) => {setTimeout(()=>{resolve(100);},500);}); }let list = ()=>{return new Promise((resolve,reject)=>{setTimeout(()=>{resolve([1,2,3]);},500);}); }let getList = async ()=>{let result = await Promise.all([count(),list()]);return result; } console.time('begin'); getList().then(result => {console.timeEnd('begin'); //begin: 505.557msconsole.log(result); //[ 100, [ 1, 2, 3 ] ] }).catch(err => {console.timeEnd('begin');console.log(err); }); 復制代碼

我們將count()和list()使用Promise.all()“同時”執行,這里count()和list()可以看作是“并行”執行的,所耗時間將是兩個異步操作中耗時最長的耗時。 最后得到的結果是兩個操作的結果組成的數組。我們只需要按照順序取出數組中的值即可。

1.6與Generator的關系

先來回顧一下ES6中Generator函數的用法:

function* getList() {const c = yield count()const l = yield list()return 'end'}var gl = getList()console.log(gl.next()) // {value: Promise, done: false}console.log(gl.next()) // {value: Promise, done: false}console.log(gl.next()) // {value: 'end', done: true} 復制代碼

雖然Generator將異步操作表示得很簡潔,但是流程管理卻不方便(即何時執行第一階段、何時執行第二階段)。此時,我們便希望能出現一種能自動執行Generator函數的方法。我們的主角來了:async/await。

ES8引入了async函數,使得異步操作變得更加方便。簡單說來,它就是Generator函數的語法糖。

let getList = async () => {const c = await count()const l = await list() } 復制代碼

2.Object.entries()

2.1作用

作用:將一個對象中可枚舉屬性的鍵名和鍵值按照二維數組的方式返回。

若對象是數組,則會將數組的下標作為鍵值返回。

Object.entries({ one: 1, two: 2 }) //[['one', 1], ['two', 2]] Object.entries([1, 2]) //[['0', 1], ['1', 2]] 復制代碼

2.2要點

1.若是鍵名是Symbol,編譯時會被自動忽略

Object.entries({[Symbol()]:1, two: 2}) //[['two', 2]] 復制代碼

2.entries()返回的數組順序和for循環一樣,即如果對象的key值是數字,則返回值會對key值進行排序,返回的是排序后的結果

Object.entries({ 3: 'a', 4: 'b', 1: 'c' }) //[['1', 'c'], ['3', 'a'], ['4', 'b']] 復制代碼

3.利用Object.entries()創建一個真正的Map

var obj = { foo: 'bar', baz: 42 };var map1 = new Map([['foo', 'bar'], ['baz', 42]]); //原本的創建方式var map2 = new Map(Object.entries(obj)); //等同于map1console.log(map1);// Map { foo: "bar", baz: 42 }console.log(map2);// Map { foo: "bar", baz: 42 } 復制代碼

2.3自定義Object.entries()

Object.entries的原理其實就是將對象中的鍵名和值分別取出來然后推進同一個數組中

//自定義entries()var obj = { foo: 'bar', baz: 42 };function myEntries(obj) {var arr = []for (var key of Object.keys(obj)) {arr.push([key, obj[key]])}return arr}console.log(myEntries(obj))//Generator版本function* genEntryies(obj) {for (let key of Object.keys(obj)) {yield [key, obj[key]]}}var entryArr = genEntryies(obj);console.log(entryArr.next().value) //["foo", "bar"]console.log(entryArr.next().value) //["baz", 42] 復制代碼

3.Object.values()

3.1作用

作用:只返回自己的鍵值對中屬性的值。它返回的數組順序,也跟Object.entries()保持一致

Object.values({ one: 1, two: 2 }) //[1, 2] Object.values({ 3: 'a', 4: 'b', 1: 'c' }) //['c', 'a', 'b'] 復制代碼

3.2與Object.keys()比較

ES6中的Object.keys()返回的是鍵名

var obj = { foo: 'bar', baz: 42 };console.log(Object.keys(obj)) //["foo", "baz"]console.log(Object.values(obj)) //["bar", 42]//Object.keys()的作用就類似于for...infunction myKeys() {let keyArr = []for (let key in obj1) {keyArr.push(key)console.log(key)}return keyArr}console.log(myKeys(obj1)) //["foo", "baz"] 復制代碼

3.3entries()、values()總結

var obj = { foo: 'bar', baz: 42 };console.log(Object.keys(obj)) //["foo", "baz"]console.log(Object.values(obj)) //["bar", 42]console.log(Object.entries(obj)) //[["foo", "bar"], ["baz", 42]] 復制代碼

4.字符串填充

4.1padStart()和padEnd()

字符串填充padStart()和padEnd()

用法

String.padStart(targetLength, padding)

參數:字符串目標長度和填充字段

'Vue'.padStart(10) //' Vue' 'React'.padStart(10) //' React' 'JavaScript'.padStart(10) //'JavaScript' 復制代碼

4.2要點

1.填充函數只有在字符長度小于目標長度時才有效,而且目標長度如果小于字符串本身長度時,字符串也不會做截斷處理,只會原樣輸出

'Vue'.padEnd(10, '_*') //'Vue_*_*_*_' 'React'.padEnd(10, 'Hello') //'ReactHello' 'JavaScript'.padEnd(10, 'Hi') //'JavaScript' 'JavaScript'.padEnd(8, 'Hi') //'JavaScript' 復制代碼

5.Object.getOwnPropertyDescriptors()

5.1作用

該方法會返回目標對象中所有屬性的屬性描述符,該屬性必須是對象自己定義的,不能是從原型鏈繼承來的。

var obj = {id: 1,name: '霖呆呆',get gender() {console.log('gender')},set grad(d) {console.log(d)}}console.log(Object.getOwnPropertyDescriptors(obj))//輸出 {gender: {configurable: true,enumerable: true,get: f gender(),set: undefined},grade: {configurable: true,enumerable: true,get: undefined,set: f grade(g)},id: {configurable: true,enumerable: true,value: 1,writable: true},name: {configurable: true,enumerable: true,value: '霖呆呆',writable: true} } 復制代碼

第二個參數,用于指定屬性的屬性描述符

Object.getOwnPropertyDescriptors(obj, 'id')//輸出結果應該為 {id: {configurable: true,enumerable: true,value: 1,writable: true} } 復制代碼

但是我在谷歌/火狐瀏覽器試了好像沒有效果,有知道原因的小伙請留言

5.2與getOwnPropertyDescriptor()比較

ES6中也有一個返回目標對象可枚舉屬性的方法

var obj = {id: 1,name: '霖呆呆',get gender() {console.log('gender')},set grad(d) {console.log(d)} } console.log(Object.getOwnPropertyDescriptor(obj, 'id'))//輸出結果{id: {configurable: true,enumerable: true,value: 1,writable: true} } 復制代碼

兩者的區別:一個是只返回知道屬性名的描述對象,一個返回目標對象所有自身屬性的描述對象

5.3自定義該方法

function myDescriptors(obj) {let descriptors = {}for (let key in obj) {descriptors[key] = Object.getOwnPropertyDescriptor(obj, key)}return descriptors}console.log(myDescriptors(obj))//返回的結果和該方法一樣//其中上面自定義方法的for...in也可以換成,效果也是一樣的for (let key of Object.keys(obj)) {descriptors[key] = Object.getOwnPropertyDescriptor(obj, key)} 復制代碼

6.函數參數支持尾部逗號

該特性允許我們在定義或者調用函數時添加尾部逗號而不報錯

let foo = function (a,b,c,) {console.log('a:', a)console.log('b:', b)console.log('c:', c)}foo(1, 3, 4, )//輸出結果為:a: 1b: 3c: 4 復制代碼

它適用于那種多行參數并且參數名很長的情況,開發過程中,如果忘記刪除尾部逗號也沒關系,ES8已經支持這種寫法。

7.修飾器Decorator

ES8神器Decorator,修飾器,也稱修飾器模式

7.1 偽Decorator

在介紹Decorator之前,我們先來實現這樣一個功能:

定義一個函數,在調用這個函數時,能夠執行一些其他額外操作

如下代碼,定義doSometing(),在調用它時再執行其他代碼

function doSometing(name) {console.log('Hello' + name)}function myDecorator(fn) {return function() {console.log('start')const res = fn.apply(this, arguments)console.log('end')return res}}const wrapped = myDecorator(doSometing)doSometing('lindaidai')//Hellowlindaidaiwrapped('lindaidai')//start //Hellowlindaidai//end 復制代碼

可以看到上面的操作:其實就是一個函數包裝成另一個函數,這樣的方式我們稱之為“修飾器”

同理,我們是不是能用一個什么東西附著在我們的類或者類的屬性上,讓它們也有一些附加的屬性或者功能呢,比如這樣:

@addSkill class Person { }function addSkill(target) {target.say = "hello world"; } 復制代碼

在Person這個類中,開始定義的時候是什么屬性都沒有的,在其上面使用@來附著上一個函數,這個函數的功能是給目標對象添加額外的屬性say。

這樣Person這個類就有了say這個屬性了。

此時控制臺輸出:

console.log(Person['say']) //'hello world' 復制代碼

同樣的,如果想使用Person這個類創建出來的對象也能附加上一些屬性,可以在目標對象的原型對象中進行添加:

@addSkill class Person { }function addSkill(target) {target.say = "hello world"; //直接添加到類中target.prototype.eat = "apple"; //添加到類的原型對象中 } var personOne = new Person()console.log(Person['say']) // 'hello world' console.log(personOne['eat']) // 'apple' 復制代碼

上面案例中的@addSkill其實就是一個最簡單的修飾器。

當然,如果你將上面案例中的代碼復制到你html文件中,會發現它并不能如愿的執行:

那是因為decorator是es7提供的方法,在瀏覽器中是無法直接運行的,如果你想要使用它,我們需要提前做一些準備,對它進行編譯。

如果你不想深入其中,只是想單純的了解并使用它可以參考下面的簡易教程。

7.2 快速使用

網上使用Decorator的教材有很多,大多都是要需要使用插件來讓瀏覽器支持Decorator。這里長話短說,貼上一個最精簡的使用教程:

1.創建一個名為:Decorator的文件夾

2.在文件夾目錄下執行命令行

npm i babel-plugin-transform-decorators-legacy babel-register --save-dev 復制代碼

此時文件夾下會出現倆個文件: node_modules 依賴文件夾和package.json-lock.json

3.創建文件 complie.js

require('babel-register')({plugins: ['transform-decorators-legacy'] }); require("./app.js") 復制代碼

4.創建文件 app.js

@addSkill class Person { } function addSkill(target) {target.say = "hello world"; } console.log(Person.say) //'hello world' 復制代碼

5.在根目錄下執行指令:

node complie.js 復制代碼

此時可以看到命令行中打印出了 hello world

簡單介紹下上面步驟的原理:

第二步中使用了倆個基礎插件:

transform-decorators-legacy: //是第三方插件,用于支持decoratorsbabel-register: //用于接入node api 復制代碼

第三步、第四步創建的倆個文件

complie.js //用來編譯app app.js //使用了裝飾器的js文件 復制代碼

第五步:

原理: 1,node執行complie.js文件; 2,complie文件改寫了node的require方法; 3,complie在引用app.js,使用了新的require方法; 4,app.js在加載過程中被編譯,并執行。 復制代碼

當然你也可以將app.js替換為app.ts 不過別忘了把complie.js中的app.js修改為app.ts

// app.ts @addSkill class Person { } function addSkill(target) {target.say = "hello world"; } console.log(Person['say']) //這里如果直接使用Person.say會提示say屬性不存在,如我使用的vscode編輯器就會報錯,是因為ts的原因,只需要用[]的形式獲取對象屬性即可。 復制代碼

注:ts中有些語法是和js中不一樣的,比如有些對象上提示沒有屬性的時候,只需要換一種獲取對象屬性的方式即可。

7.3 類修飾器

直接作用在類上面的修飾器,我們可以稱之為類修飾器。

如上面案例中的@addSkill就是一個類修飾器,它修改了Person這個類的行為,為它加上了靜態屬性say。

addSkill函數的參數target是Person這個類本身。

1.修飾器的執行原理基本就是這樣:

@decorator class A {}// 等同于class A {} A = decorator(A) || A; 復制代碼

換句話說,類修飾器是一個對類進行處理的函數。

它的第一個參數target就是函數要處理的目標類。

2.多參數

當然如果你想要有多個參數也是可以的,我們可以在修飾器外面再封裝一層函數:

@addSkill("hello world") class Person { } function addSkill(text) {return function(target) {target.say = text;} } console.log(Person.say) //'hello world' 復制代碼

上面代碼中,修飾器addSkill可以接受參數,這就等于可以修改修飾器的行為。

3.修飾器在什么時候執行。

先來看一個案例:

@looks class Person { } function looks(target) {console.log('I am handsome')target.looks = 'handsome' }console.log(Person['looks'])//I am handsome //handsome 復制代碼

在修飾器@looks中添加一個console.log()語句,卻發現它是最早執行的,其次才打印出handsome。

這是因為裝飾器對類的行為的改變,是代碼編譯時發生的,而不是在運行時。這意味著,裝飾器能在編譯階段運行代碼。也就是說,裝飾器本質就是編譯時執行的函數。

裝飾器是在編譯時就執行的函數

7.4 方法修飾器

上面的案例中,修飾器作用的對象是類本身。

當然修飾器不僅僅這么簡單,它也可以作用在類里的某個方法或者屬性上,這樣的修飾器我們稱它為方法修飾器。

如下面的案例:

class Person {constructor() {}@myname //方法修飾器name() {console.log('霖呆呆') } } function myname(target, key, descriptor) {console.log(target);console.log(key);console.log(descriptor);descriptor.value = function() {console.log('霖呆呆')} }var personOne = new Person() //實例化 personOne.name() //調用name()方法//打印結果: Person {} name { value: [Function: name],writable: true,enumerable: false,configurable: true } 霖呆呆 復制代碼

上面案例中的修飾器@myname是放在name()方法上的,myname函數有三個參數:

target: 類的原型對象,上例是Person.prototype key: 所要修飾的屬性名 name descriptor: 該屬性的描述對象 復制代碼

我們改變了descriptor中的value,使之打印出霖呆呆。

7.5 多個修飾器的執行順序

若是同一個方法上有多個修飾器,會像剝洋蔥一樣,先從外到內進入,然后由內向外執行。

class Person {constructor() {}@dec(1)@dec(2)name() {console.log('霖呆呆')} } function dec(id) {console.log('out', id);return function(target, key, descriptor) {console.log(id);} }var person = new Person() person.name() //結果 out 1 out 2 2 1 霖呆呆 復制代碼

如上所屬,外層修飾器dec(1)先進入,但是內層修飾器dec(2)先執行。

7.6 不能作用于函數

修飾器不能作用于函數之上,這是因為函數和變量一樣都會提升

var counter = 0;var add = function () {counter++; };@add function foo() { } 復制代碼

如上面的例子所示,給函數foo()定義了修飾器@add,作用是想將counter++

預計的結果counter為1,但實際上卻還是為0

原因:

定義的函數foo()會被提升至最上層,定義的變量counter和add也會被提升,效果如下:

@add function foo() { }var counter; var add;counter = 0;add = function () {counter++; }; 復制代碼

總之,由于存在函數提升,使得修飾器不能用于函數。類是不會提升的,所以就沒有這方面的問題。

另一方面,如果一定要修飾函數,可以采用高階函數的形式直接執行。

如在7.1中的例子所示:

function doSometing(name) {console.log('Hello' + name)}function myDecorator(fn) {return function() {console.log('start')const res = fn.apply(this, arguments)console.log('end')return res}}const wrapped = myDecorator(doSometing)doSometing('lindaidai')//Hellowlindaidaiwrapped('lindaidai')//start //Hellowlindaidai//end 復制代碼

后語

知識無價,尊重原創。

參考文集:

10分鐘學會ES7+ES8

JavaScript中的裝飾器--Decorator

es7-decorator修飾器運行環境搭建及實踐

阮一峰Decorator詳解

總結

以上是生活随笔為你收集整理的Javascript之ES7详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

人人爽人人爽人人爽人人爽 | 天天射射天天 | 91精品国产成人www | 日韩精品一区二区三区视频播放 | 午夜av一区 | 日韩有色 | 国产免费a | 激情视频一区二区 | 午夜视频在线观看一区二区三区 | 香蕉影视 | 亚洲在线色| 一级电影免费在线观看 | 97网站| 一级一片免费视频 | 国产精品久久久久久久久久久免费 | 久久久久久久久久久网 | 91久久国产综合精品女同国语 | 黄色视屏免费在线观看 | 国产精品9区 | 在线观看黄a | 西西大胆啪啪 | 国产精品久久久久久吹潮天美传媒 | 国产在线999 | 黄色片免费看 | 国产亚洲人成网站在线观看 | www黄色| 美女国产免费 | 亚洲视频 视频在线 | 黄网站色视频免费观看 | 91精品一区二区三区久久久久久 | 国产伦理久久精品久久久久_ | 夜夜操天天干 | 四虎免费在线观看视频 | 97超碰成人| 国产一区二区在线免费观看 | 成年人黄色av| 精品国产一区二区三区久久久久久 | 国产精品99久久久久久久久 | 久久人人爽人人爽人人片av软件 | 亚洲影视九九影院在线观看 | 亚洲欧美日韩在线一区二区 | 久久久久成人精品 | 中文字幕av电影下载 | 成人av av在线| 亚洲精品中文在线资源 | 亚洲欧洲在线视频 | 日韩有码中文字幕在线 | 久久xxxx| 国产青草视频在线观看 | 午夜在线看片 | 亚洲综合激情 | 激情综合一区 | 一区二区三区国 | 免费视频久久久久 | 亚洲免费视频在线观看 | 亚洲精品网址在线观看 | 日韩电影在线观看一区二区三区 | 精品久久1 | 国产精品免费一区二区三区在线观看 | 91精品区| 日韩在线视频国产 | 激情久久久久久久久久久久久久久久 | 久草视频播放 | 中文字幕免费在线 | 国产裸体无遮挡 | 国产拍在线 | 国产精品久免费的黄网站 | 黄视频网站大全 | 黄污污网站 | 免费视频久久久久 | 国产成人亚洲精品自产在线 | 日韩免费三级 | 色的网站在线观看 | 日韩一区二区三区高清免费看看 | 久久免费视频5 | 香蕉影视app | 亚洲午夜精品久久久久久久久久久久 | 中文字幕在线免费观看视频 | 日韩精品免费专区 | 久久都是精品 | 国产1区在线观看 | 最新国产视频 | 狠狠操夜夜操 | 日韩va欧美va亚洲va久久 | 国产精品久久久久永久免费观看 | 亚洲精品国精品久久99热 | 黄色视屏av| 色噜噜狠狠狠狠色综合 | 色婷婷综合视频在线观看 | 国产精品久久久久久久久毛片 | 国产在线一区二区 | 国产精品大全 | 97电影院在线观看 | 国产色久 | 免费成人在线视频网站 | 中文字幕亚洲欧美日韩2019 | 黄色a大片| 91久久久久久久一区二区 | 色视频网站在线 | 黄色字幕网 | 97超视频免费观看 | 久久国产精品二国产精品中国洋人 | 色婷婷av一区 | 成年人免费看 | 天天操操操操操操 | 99re热精品视频 | 国产一区在线视频观看 | 欧美久久久久久久久久久 | 婷婷国产一区二区三区 | 在线观看国产91 | 国产精品二区三区 | 日韩精品一区二区在线观看 | 香蕉免费在线 | 在线播放精品一区二区三区 | 久久伊人爱 | 久久久久久久99 | 久久久久国产成人免费精品免费 | 五月婷婷在线视频观看 | 精品免费久久久久 | 国产欧美精品一区aⅴ影院 99视频国产精品免费观看 | 黄色一区二区在线观看 | 天天在线免费视频 | 人人插人人艹 | 国产在线观看中文字幕 | 国产精品久久久久久久午夜片 | 久久精品一二三区白丝高潮 | 日韩一二区在线观看 | 黄色免费网站下载 | 亚洲美女视频在线 | 亚洲精品毛片一级91精品 | 国产精品永久久久久久久www | 91禁看片 | 亚洲精品麻豆 | 国产在线无 | www.黄色片.com| 在线国产不卡 | 狠狠操狠狠干天天操 | 国产精品岛国久久久久久久久红粉 | 伊人天天 | 久久视频在线视频 | 国内久久看 | 99在线热播精品免费 | 久久久久久久电影 | 欧美一级特黄aaaaaa大片在线观看 | av网址在线播放 | 日本精品久久久一区二区三区 | 免费午夜av| 色香蕉在线视频 | 亚洲国内精品视频 | 久久美女高清视频 | 中文字幕日韩在线播放 | 8x成人在线| av高清网站在线观看 | 69精品久久 | 国产精品久久久免费 | 日韩精品中文字幕一区二区 | 在线电影av | 欧美日韩一区二区三区在线免费观看 | 九九免费精品视频在线观看 | 日本福利视频在线 | 精品一二三区视频 | 精品一区二区av | 亚洲精品国产精品国自产 | 日本三级香港三级人妇99 | 色综合久久久久综合体 | 五月婷婷综合激情网 | 久久影院午夜论 | 婷婷伊人综合亚洲综合网 | 国产精品久久久777 成人手机在线视频 | 精品久久久久久一区二区里番 | 手机看片99| 婷婷在线免费视频 | 日日爱999 | 国产精品激情在线观看 | 色综合中文字幕 | 国产玖玖在线 | 51久久夜色精品国产麻豆 | 97在线视频免费 | 日本激情动作片免费看 | 349k.cc看片app| 国产精品久久久久婷婷二区次 | 欧美a级在线 | 国产精品久久久久影视 | 黄色在线观看免费网站 | 天天爽天天爽 | 日韩在线观看一区二区三区 | 国产高清视频免费最新在线 | 亚洲va欧美va | 亚洲精品一区二区三区新线路 | 国产在线中文 | 日韩视频三区 | 精品视频www| 五月婷婷丁香激情 | 日韩在线观看中文 | 欧美精品中文在线免费观看 | 337p西西人体大胆瓣开下部 | 伊人亚洲综合 | 成年美女黄网站色大片免费看 | 九九热av| 久久夜靖品 | 91丨九色丨首页 | 久久久99精品免费观看乱色 | 日韩一级电影在线观看 | 日韩欧美国产免费播放 | 一区二区成人国产精品 | 久久精品欧美一区 | 黄色三级免费网址 | 麻豆视频观看 | 波多野结衣在线中文字幕 | av在线播放国产 | 色婷婷久久 | 国产精品成人一区二区三区 | 蜜桃传媒一区二区 | 天天干,天天射,天天操,天天摸 | 日本中文字幕网站 | 激情五月视频 | 亚洲精品综合一二三区在线观看 | 精品国内自产拍在线观看视频 | 日韩久久精品一区二区 | 9久久精品 | 久久久久久久久久久国产精品 | 高清免费在线视频 | 国产视频久久久久 | 黄污在线观看 | 国产精品麻豆视频 | 成人av在线影视 | 精品国产成人av在线免 | 狠狠色免费 | 国产免费精彩视频 | 黄色a视频 | 91你懂的| 欧美国产亚洲精品久久久8v | av免费网站在线观看 | 911精品美国片911久久久 | 中文字幕视频网 | 亚洲视频在线看 | 草久久久久久 | 欧美a级片免费看 | 青春草视频在线播放 | 国产精品欧美久久 | 欧美日韩视频 | 国产精品中文在线 | 久草久草视频 | 久久精品国产一区二区 | 中文字幕在线精品 | 欧美va天堂va视频va在线 | 欧美va天堂va视频va在线 | 国产精品video| 久久激情五月丁香伊人 | 91麻豆免费看 | h动漫中文字幕 | 欧美精品九九99久久 | 久久综合色播五月 | 国产 在线观看 | 婷婷六月中文字幕 | 国产精品福利视频 | 天天综合区 | 成人久久久久 | 精品美女久久久久 | avv天堂| 亚洲狠狠操 | 中文字幕av电影下载 | 手机看国产毛片 | 亚洲精品国产拍在线 | 最近高清中文字幕在线国语5 | 人人射人人澡 | 国产精品久久一区二区三区不卡 | 国产亚洲欧美日韩高清 | 超碰97中文| 免费网站黄 | 狠狠色丁香婷婷综合最新地址 | 蜜臀av一区二区 | 天天干.com| 91人人在线 | 国内视频在线观看 | 日韩三级免费 | 成片免费观看视频 | 久久免费国产视频 | 天天操夜夜摸 | 91视频com| 国产一区二区免费在线观看 | 日韩av一区二区在线影视 | 久久久久欧美精品 | 精品视频免费观看 | 国产3p视频 | free. 性欧美.com | 亚洲激情 欧美激情 | 久久精品福利视频 | 全黄网站 | 91高清完整版在线观看 | 一区二区三区中文字幕在线观看 | 在线观看国产成人av片 | 激情综合久久 | 久久午夜电影院 | 国产精品欧美一区二区 | 国产精品第72页 | 亚洲热久久 | 国偷自产视频一区二区久 | 国产免费观看高清完整版 | 91精品国产综合久久福利不卡 | 免费成视频 | 一级片视频在线 | 久久国产精品一区二区 | 中文字幕最新精品 | 免费三级大片 | 四虎影视欧美 | 亚洲狠狠操 | 欧美人牲| 91久久人澡人人添人人爽欧美 | 中文字幕在线观看免费高清完整版 | 婷婷综合久久 | 九九三级毛片 | 九九久久婷婷 | 欧亚久久 | 欧美一级片免费观看 | 亚洲日韩精品欧美一区二区 | 国产午夜麻豆影院在线观看 | 免费麻豆 | 国产不卡网站 | 四虎国产视频 | 久久精品视频5 | 久久久久欠精品国产毛片国产毛生 | 欧美精品一区二区三区一线天视频 | 日韩电影一区二区三区在线观看 | 人人爽人人插 | 中文字幕精品一区 | 激情综合网婷婷 | 一区二区三区影院 | 日本三级久久 | 久久久精品国产免费观看一区二区 | 九9热这里真品2 | 超碰国产在线观看 | 香蕉视频在线网站 | 不卡精品视频 | 成人一区二区在线 | 亚洲视频1区2区 | 久久久久久在线观看 | 久久精品高清 | 69热国产视频 | 中文字幕日本在线观看 | 免费视频在线观看网站 | 午夜丁香视频在线观看 | 少妇bbbb | 午夜12点 | 久久网站最新地址 | 亚洲成a人片77777kkkk1在线观看 | 国产丝袜 | 日韩中文幕 | 国产中文视 | 国产美腿白丝袜足在线av | 婷婷亚洲激情 | 东方av在线免费观看 | 日韩在线观看一区二区三区 | 98超碰在线 | 97天天综合网| 日韩欧美一区视频 | 欧美极度另类性三渗透 | 91人人人 | 日韩免费观看高清 | 国产破处精品 | 91精品在线观看视频 | 亚洲六月丁香色婷婷综合久久 | 成人av在线影视 | 久久伊人精品一区二区三区 | 999视频在线播放 | av综合在线观看 | 婷婷丁香六月 | 激情大尺度视频 | 黄网站色 | 超碰免费av | 男女啪啪视屏 | 色婷在线 | 操操色| 手机av片 | 国产不卡av在线播放 | 日日碰夜夜爽 | 国产精品专区在线观看 | 91精品国产一区二区在线观看 | av综合av| 亚洲1区在线 | 日韩精品免费一线在线观看 | 国产黄色片在线免费观看 | 久久草草热国产精品直播 | 国产免费嫩草影院 | 免费看片网页 | 久久最新 | 欧美午夜精品久久久久久浪潮 | 国产亚洲精品久久 | 欧美日韩高清一区二区 | 欧美激情第28页 | 国产精品99久久久久久小说 | 91麻豆免费看 | 99成人免费视频 | 日韩免费三区 | 激情久久综合网 | 亚洲国产高清视频 | 日韩精品一区电影 | 欧美精品一区在线 | 色噜噜日韩精品一区二区三区视频 | 中文字幕一区二区三区在线视频 | 韩日三级av| 伊人天天色| 中文字幕在线观看视频免费 | 色噜噜在线观看视频 | 久久与婷婷 | 国产亚洲精品久 | 精品久久久影院 | 99产精品成人啪免费网站 | 青春草视频在线播放 | 91综合色 | 精品国产一区二区三区四区在线观看 | 国产精品v a免费视频 | 色综合狠狠干 | 97在线观看视频 | 国产一区黄色 | 天天做天天看 | 亚洲精品毛片一级91精品 | 久久99热精品这里久久精品 | 国产成人免费观看久久久 | 国产无套一区二区三区久久 | 亚洲精品字幕在线观看 | 波多野结衣一区 | 五月天高清欧美mv | 四虎永久免费 | 狠狠色丁香婷婷综合基地 | 人人爽网站| 日韩有色 | 日韩欧美电影在线 | 亚洲国产精品99久久久久久久久 | 精品视频在线视频 | 激情视频久久 | 国产在线免费 | 亚洲专区视频在线观看 | 亚洲乱码中文字幕综合 | 欧美成人h版 | 九色91在线视频 | 国产成人一区二区三区久久精品 | 中文字幕 二区 | 91福利影院在线观看 | 国产黄色免费看 | 午夜美女视频 | 亚洲人成影院在线 | 中文字幕在线高清 | 色天天综合久久久久综合片 | 亚洲视频久久久久 | 久久久久免费 | 色欧美视频 | 国产黄色网 | 狠狠色综合欧美激情 | 日韩国产欧美视频 | 亚州精品国产 | 午夜久久久久久久 | 草久热| 在线观看黄色的网站 | 欧美激情在线看 | 亚洲精品国产精品99久久 | 亚洲成熟女人毛片在线 | 97在线视频观看 | 最新超碰在线 | 很黄很污的视频网站 | 午夜精品久久久久 | 精品9999| 久久伊人综合 | avlulu久久精品 | 五月天电影免费在线观看一区 | 激情欧美一区二区三区免费看 | 在线观看爱爱视频 | 国产黄a三级三级三级三级三级 | 久久黄色网 | 色综合国产 | 91久久国产露脸精品国产闺蜜 | 久草久草在线观看 | 性色av免费在线观看 | 欧美日韩性视频 | 国产 欧美 日本 | 亚洲另类交 | 成年人视频在线免费播放 | av网站在线免费观看 | 福利视频一二区 | 日韩av一区二区在线影视 | 免费成人短视频 | 国产精品a成v人在线播放 | 在线久草视频 | 久久久久久久久久久免费av | 国产精品自产拍在线观看中文 | 久热电影| 国产精品理论视频 | 亚洲欧美成人综合 | 欧美日韩二区在线 | 91成人欧美 | 久久久久国产精品免费免费搜索 | 亚洲人毛片| 日韩精品第1页 | 黄色大片日本免费大片 | 亚洲成aⅴ人在线观看 | 久久久久国产一区二区三区 | 成人18视频 | 狠狠色丁香婷综合久久 | 国产精品专区h在线观看 | 欧美大片第1页 | 天天做天天看 | 国产欧美日韩精品一区二区免费 | 成人羞羞视频在线观看免费 | 69av视频在线观看 | 日韩欧美高清一区二区三区 | 91九色视频观看 | 人人爽夜夜爽 | 国产精品一区二区av影院萌芽 | 日韩一二区在线 | 伊人天天狠天天添日日拍 | 成人精品久久久 | 日韩激情免费视频 | 狠狠干狠狠色 | 久草视频免费在线播放 | 亚洲精品欧美视频 | 人人澡人人添人人爽一区二区 | 波多野结衣一区 | 精品美女久久久久久免费 | 天天摸天天舔天天操 | 激情综合网天天干 | 伊人久久在线观看 | 日日摸日日 | 丁香免费视频 | 国产一级黄色电影 | 久久电影网站中文字幕 | av网在线观看 | 午夜三级理论 | 日韩三级免费 | av大全在线免费观看 | 国产精品国产亚洲精品看不卡 | 久久成年人 | www视频在线免费观看 | 久久久久久国产精品 | 中文字幕乱码日本亚洲一区二区 | 美女视频一区 | 欧美成人在线网站 | 日本中文不卡 | 人人插人人插 | 欧美一级久久久 | 亚洲jizzjizz日本少妇 | 欧美精品亚洲二区 | www黄免费 | 激情五月视频 | www.av小说| 日韩免费视频网站 | 不卡的av在线 | 九九热免费视频在线观看 | 亚洲国产精品人久久电影 | 91视频免费看 | 四虎影视成人永久免费观看亚洲欧美 | 国产综合福利在线 | 一区二区视频在线免费观看 | 99精品免费 | 在线免费观看国产 | 欧美黑人xxxx猛性大交 | 97在线成人| 丁香六月婷婷综合 | 在线观看色网站 | 最近中文字幕视频完整版 | 国产一级大片在线观看 | 亚洲精品高清一区二区三区四区 | 激情综合中文娱乐网 | 99久久99视频只有精品 | 超碰97人人爱 | 色婷婷在线播放 | 2018好看的中文在线观看 | 韩国一区二区三区视频 | 97成人精品视频在线观看 | 久久精品成人欧美大片古装 | 中文在线a天堂 | 成人国产精品免费观看 | 亚洲精品tv | 久久久精品欧美一区二区免费 | 日韩欧美精品在线观看视频 | 福利片视频区 | 久久综合九色综合网站 | 丰满少妇在线观看资源站 | 亚洲国产成人久久 | 国产精品一区欧美 | 国产福利资源 | 国产精品午夜av | 欧美老女人xx | 国产中文字幕大全 | 亚洲撸撸| 成 人 免费 黄 色 视频 | 精品国产免费av | 五月天久久久 | 欧美精品在线一区二区 | 国产视频精品久久 | 精品欧美小视频在线观看 | 91精品国产乱码 | 欧美性色综合网 | 日韩视频中文字幕 | 五月天婷婷在线视频 | 中文字幕av在线不卡 | 8090yy亚洲精品久久 | 成人一区二区在线观看 | av电影免费看 | 91 中文字幕 | 亚洲黄色app | 色婷婷激情 | 国产手机av在线 | 一区二区三区免费网站 | 久久国产欧美日韩 | 精品亚洲va在线va天堂资源站 | 国产精久久久 | 青青河边草免费直播 | 天天玩天天干天天操 | 狠狠的操狠狠的干 | 精品国产欧美一区二区 | 免费黄色a级毛片 | av成人在线看 | 99免费观看视频 | 在线观看色视频 | 在线观看中文字幕 | 九九免费在线观看视频 | 国产精品亚州 | 亚洲精品国产精品国自产观看 | 国产成人精品亚洲精品 | 国内小视频在线观看 | 成人h在线 | 天天翘av | 国产精品美女999 | 欧美成人影音 | 日韩电影在线观看一区二区三区 | 丁香高清视频在线看看 | 久99久精品| 夜夜操网站 | 最近中文字幕mv免费高清在线 | 怡红院av久久久久久久 | 免费网站观看www在线观看 | 亚洲最新在线视频 | 国产韩国日本高清视频 | 一色屋精品视频在线观看 | 亚洲国产精品va在线看黑人 | 一区二区三区四区五区在线 | 久久久www成人免费精品 | 91精品久久久久久 | 日韩精品一区二区三区在线视频 | 婷婷亚洲五月色综合 | 麻豆va一区二区三区久久浪 | 一级黄色视屏 | 国色天香av| 亚洲伊人色 | 久久免费电影网 | 91高清在线 | 一区二区电影在线观看 | aav在线| 成年人免费看 | 中文字幕在线视频一区二区三区 | 免费av电影网站 | 久久三级视频 | 最近最新中文字幕 | 五月天综合在线 | 国产亚洲精品bv在线观看 | 久久婷婷综合激情 | av天天色 | 国产精品黑丝在线观看 | 久久九九久久 | 黄p网站在线观看 | 免费下载高清毛片 | 九九热精品视频在线播放 | 久草精品视频在线播放 | 欧美激情精品久久久久久免费印度 | 成人免费一区二区三区在线观看 | 国产精品久久久久久久免费观看 | 亚洲成人黄色av | 国产欧美精品一区二区三区 | 91色偷偷 | 久久久高清视频 | 欧美极度另类性三渗透 | 在线免费国产 | 99精品欧美一区二区三区黑人哦 | 日日爱网站 | 久草在线中文视频 | 亚洲精品乱码 | 91视频首页 | 色综合五月天 | 婷婷丁香导航 | 成年人毛片在线观看 | 免费看黄色毛片 | 国产不卡网站 | 日韩理论影院 | 水蜜桃亚洲一二三四在线 | 成人a视频片观看免费 | 99热亚洲精品 | 亚洲精品婷婷 | 日韩 国产 | 免费在线观看av | 综合黄色网 | 午夜美女福利 | 欧美黑吊大战白妞欧美 | 中文字幕亚洲国产 | 91福利视频网站 | 免费网站在线 | 日韩成人在线一区二区 | www.狠狠色 | 精品久久久久久久久久国产 | 欧美激情视频在线免费观看 | 波多野结衣一区 | 丁香六月在线观看 | www在线观看视频 | 99视频国产在线 | 日韩有码第一页 | 国产人成一区二区三区影院 | 中文字幕色网站 | 日本中文字幕在线观看 | 天天干天天草 | 九九热精| 国产午夜精品福利视频 | 综合五月婷婷 | 五月婷婷在线视频 | 91看片淫黄大片一级在线观看 | 波多野结衣精品视频 | www黄| 一区二区观看 | 国产午夜精品一区二区三区嫩草 | 玖玖玖在线观看 | 日本中文字幕网 | 人人插人人射 | 久久免费中文视频 | 亚洲成人国产精品 | 天天干天天干天天干天天干天天干天天干 | 国产精品美女网站 | 婷婷午夜激情 | 国精产品满18岁在线 | 亚洲,国产成人av | 亚洲 欧美变态 另类 综合 | 亚洲在线高清 | 一级黄色网址 | 日韩精品你懂的 | 精品国产一区二区三区男人吃奶 | 成人在线免费视频 | 伊人小视频 | 国产在线精 | 看毛片的网址 | 黄色网址国产 | 亚洲国产wwwccc36天堂 | 蜜桃av人人夜夜澡人人爽 | 久久久久成人精品 | 这里只有精品视频在线 | a资源在线| 国产又粗又猛又爽又黄的视频免费 | 99久久99久久精品免费 | 国产精品成人免费一区久久羞羞 | 亚洲视频1 | 五月天色中色 | 免费网站在线 | 免费看搞黄视频网站 | 国产欧美精品xxxx另类 | 麻豆久久精品 | 国产福利在线不卡 | 4p变态网欧美系列 | 欧美成人h版在线观看 | 麻豆一区在线观看 | 国产在线精品一区二区三区 | 色综合久久88色综合天天免费 | 午夜精品久久久久久久99水蜜桃 | 欧美成人91 | 久久免费av电影 | 精品国产一区二区三区久久久 | 国产精品一区在线 | 亚洲三级网站 | 亚洲综合在线视频 | 国产精品不卡av | 九九热视频在线免费观看 | 国产福利91精品一区二区三区 | 日韩精品欧美专区 | 成年人在线观看 | av黄色成人 | 国产精品毛片完整版 | 精品视频一区在线观看 | 福利片视频区 | 免费成人黄色av | 国产在线探花 | 日本在线h | 亚洲婷婷在线 | 亚洲精品视频观看 | 日韩二区精品 | 国产成人三级一区二区在线观看一 | 久久精品艹 | 日韩在线观看视频一区二区三区 | 综合网中文字幕 | 97操碰| 91高清视频在线 | 精品久久久久久国产91 | 欧美日韩一级久久久久久免费看 | 这里有精品在线视频 | 缴情综合网五月天 | 久久激情久久 | 国产成人在线观看免费 | 久久69精品 | 狠狠做深爱婷婷综合一区 | 久久综合精品国产一区二区三区 | 毛片99| 久久夜色精品国产欧美乱极品 | 午夜精品麻豆 | 在线观看中文字幕dvd播放 | 国产精品嫩草55av | 久久精彩视频 | 亚洲精品一区二区精华 | 久久国产精品99久久久久久丝袜 | 在线观看免费国产小视频 | 日韩精品久久中文字幕 | 欧美日韩一区二区三区在线免费观看 | 久久久免费观看 | 欧美成人一区二区 | 在线91av| 亚洲片在线 | 亚洲黄色av | 91精品久久久久久综合乱菊 | 亚洲欧美日本一区二区三区 | 美女福利视频在线 | 一区二区三区免费在线 | 91在线视频免费观看 | 国产在线91精品 | 国产成人av | 久久夜色精品国产欧美乱 | 成人久久久久久久久 | 97看片| 日韩精品久久一区二区三区 | 亚洲少妇天堂 | 亚洲精品高清一区二区三区四区 | 成人小视频在线 | 在线视频一区二区 | 亚洲,国产成人av | 91香蕉视频在线下载 | 国产成人精品在线观看 | 婷婷 中文字幕 | 久久精品国亚洲 | 中文字幕在| 91麻豆国产福利在线观看 | 日日爽 | 999国内精品永久免费视频 | 欧美色婷| 日韩精品一区不卡 | 国产特级毛片 | 综合网五月天 | 在线播放精品一区二区三区 | 怡红院av久久久久久久 | 免费av网站观看 | 深爱开心激情 | 亚洲极色 | 午夜三级理论 | 午夜久久福利 | 日韩在线中文字幕 | 婷婷精品 | 婷婷激情网站 | 日韩一区二区免费播放 | 国产偷在线 | 国产中年夫妇高潮精品视频 | 国产精品日韩欧美一区二区 | 国产夫妻性生活自拍 | 亚洲精品乱码久久久一二三 | 韩国精品在线 | 亚洲黄色一级电影 | 黄色av网站在线免费观看 | 天天草网站 | 操久在线 | 国产福利一区二区三区视频 | 免费视频久久久 | 日韩午夜在线 | 91探花视频| 五月天av在线 | 最近更新好看的中文字幕 | 黄色在线观看www | 国产高清中文字幕 | 右手影院亚洲欧美 | 网站在线观看你们懂的 | 91豆花在线观看 | 亚洲精品视频在线观看免费视频 | 亚洲va天堂va欧美ⅴa在线 | 成人免费在线播放视频 | 欧美一区日韩精品 | 中文字幕 婷婷 | 青青河边草手机免费 | 五月婷婷亚洲 | 日韩在线中文字幕视频 | 成人网色| 久久久久久中文字幕 | 亚洲高清av在线 | 国产视频在线观看一区 | 曰韩在线 | 免费a级黄色毛片 | 日韩av在线看 | 久久精品久久久精品美女 | 中文字幕在线观看三区 | 国产成人精品久久久久蜜臀 | 久久精品一二三 | 国产成人黄色在线 | 美女久久久久久久久久 | 免费在线精品视频 | 午夜精品一区二区三区在线 | 国产午夜视频在线观看 | 日韩精品在线免费观看 | 99爱在线 | 在线观看亚洲免费视频 | 欧美一级片在线免费观看 | 在线小视频国产 | 国产精品久久久久久一区二区三区 | 免费网站黄色 | 欧美亚洲国产一卡 | 免费黄色在线网址 | 日本午夜免费福利视频 | 色综合久久久 | 自拍超碰在线 | 精品国产三级a∨在线欧美 免费一级片在线观看 | 日韩天天综合 | 欧美激情片在线观看 | 99精品视频在线免费观看 | 中文字幕一区二区三区四区久久 | 天天操天天谢 | 91在线porny国产在线看 | 日韩精品一区二区三区在线播放 | 国产又粗又猛又色又黄网站 | av黄色在线 | 亚洲经典中文字幕 | 奇米网8888| 在线观看你懂的网站 | 一级a性色生活片久久毛片波多野 | 日韩免费二区 | 一区二区不卡高清 | 国产女人18毛片水真多18精品 | 97电影手机 | 免费视频在线观看网站 | 人人澡人人模 | avove黑丝 | 久久久久99精品成人片三人毛片 | 欧美视频18 | 99久久www| 日韩欧美视频一区二区三区 | 国产精品99久久久久久有的能看 | 91麻豆精品91久久久久同性 | 7799av| 日韩在线观看高清 | 午夜精品区 | 探花视频在线观看免费版 | 国产精品久久久久毛片大屁完整版 | 五月激情六月丁香 | 色综合亚洲精品激情狠狠 | 日韩色高清 | 996久久国产精品线观看 | 欧美日韩天堂 | 免费在线观看成人av | 国产一级做a爱片久久毛片a | 久久精品99久久久久久 | 国产69精品久久久久99尤 | 色网站免费在线观看 | 国产 日韩 在线 亚洲 字幕 中文 | 一级特黄aaa大片在线观看 | 人人射人人爱 | 欧美analxxxx | www·22com天天操 | av在线短片| wwwwww国产| 久久久免费观看完整版 | 激情小说网站亚洲综合网 | 国产成人精品不卡 | 最近免费在线观看 | 欧美一区二区三区在线看 | 视频国产一区二区三区 | 欧美一级特黄aaaaaa大片在线观看 | 九色视频网址 | 亚洲免费高清视频 | 久久久久久久久黄色 | 亚洲成av人片在线观看无 | 99视频在线免费播放 | 999精品在线 | 国产精品一级视频 | 色中文字幕在线观看 | 欧美疯狂性受xxxxx另类 | av高清一区二区三区 | 久久久视频在线 | 2019免费中文字幕 | 成片免费观看视频 | 99视频在线免费观看 | 在线观看日韩一区 | 日韩av影片在线观看 | 亚洲精品ww| 成人9ⅰ免费影视网站 | a级国产乱理伦片在线播放 久久久久国产精品一区 | 色香蕉视频 | 日免费视频 | 伊人午夜 | 日韩在线观看一区二区三区 | 一二三区视频在线 | 91亚洲精| 国产又粗又猛又色 | 久视频在线播放 | 中文字幕精品一区久久久久 | 亚洲精品电影在线 | 日本精品一区二区三区在线播放视频 | 午夜免费福利视频 | 激情综合一区 | 国产一级电影免费观看 | 欧美午夜一区二区福利视频 | 亚洲视频电影在线 | 日韩在线色视频 |