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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

狂神说js学习笔记

發(fā)布時間:2024/3/13 编程问答 51 豆豆
生活随笔 收集整理的這篇文章主要介紹了 狂神说js学习笔记 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

  • 0、前端知識體系
    • 0.1前端三要素
    • 0.2、結(jié)構(gòu)層(HTML)
    • 0.3、表現(xiàn)層(CSS)
    • 0.4、行為層(JavaScript)
    • 0.5、三端同一
  • 1、什么是JavaScript
      • 1.1、概述
      • 1.2、歷史
  • 2、快速入門
    • 2.1、引入JavaSciprt
    • 2.2、基本語法入門
    • 2.3、數(shù)據(jù)類型
    • 2.4、嚴(yán)格檢查格式
  • 3、數(shù)據(jù)類型
    • 3.1、字符串
    • 3.2 數(shù)組
    • 3.3、對象
    • 3.4、流程控制
    • 3.5、Map 和 Set
    • 3.6、 interator
  • 4、函數(shù)
    • 4.1、定義函數(shù)
    • 4.2、變量的作用域
    • 4.3、方法
  • 5、內(nèi)部對象
    • 5.1、Date
    • 5.2、JSON
    • 5.3、Ajax
  • 6、面向?qū)ο缶幊?/li>
  • 7、操作BOM對象(重點)
  • 8、操作DOM對象(重點)
  • 9、操作表單(驗證)
  • 10、jQuery

0、前端知識體系

想要成為真正的“互聯(lián)網(wǎng)Java全棧工程師”還有很長的一段路要走,其中前端是繞不開的一門必修課。本階段課程的主要目的就是帶領(lǐng)Java后臺程序員認識前端、了解前端、掌握前端,為實現(xiàn)成為“互聯(lián)網(wǎng)Java全棧工程師”再向前邁進一步。

0.1前端三要素

  • HTML(結(jié)構(gòu)):超文本標(biāo)記語言(Hyper Text Markup Language),決定網(wǎng)頁的結(jié)構(gòu)和內(nèi)容。
  • CSS(表現(xiàn)):層疊樣式表(Cascading Style Sheets),設(shè)定網(wǎng)頁的表現(xiàn)樣式。
  • JavaScript(行為):是一種弱類型腳本語言,其源碼不需經(jīng)過編譯,而是由瀏覽器解釋運行,用于控制網(wǎng)頁的行為

0.2、結(jié)構(gòu)層(HTML)

0.3、表現(xiàn)層(CSS)

CSS層疊樣式表是一門標(biāo)記語言,并不是編程語言,因此不可以自定義變量,不可以引用等,換句話說就是不具備任何語法支持,它主要缺陷如下:

  • 語法不夠強大,比如無法嵌套書寫,導(dǎo)致模塊化開發(fā)中需要書寫很多重復(fù)的選擇器;
  • 沒有變量和合理的樣式復(fù)用機制,使得邏輯上相關(guān)的屬性值必須以字面量的形式重復(fù)輸出,導(dǎo)致難以維護;

這就導(dǎo)致了我們在工作中無端增加了許多工作量。為了解決這個問題,前端開發(fā)人員會使用一種稱之為【CSS預(yù)處理器】的工具,提供CSS缺失的樣式層復(fù)用機制、減少冗余代碼,提高樣式代碼的可維護性。大大的提高了前端在樣式上的開發(fā)效率。

什么是CSS預(yù)處理器?

  • CSS預(yù)處理器定義了一種新的語言,其基本思想是,用一種專門的編程語言,為CSS增加了一些編程的特性,將CSS作為目標(biāo)生成文件,然后開發(fā)者就只需要使用這種語言進行CSS的編碼工作。轉(zhuǎn)化成通俗易懂的話來說就是“用一種專門的編程語言,進行Web頁面樣式設(shè)計,再通過編譯器轉(zhuǎn)化為正常的CSS文件,以供項目使用”。
  • 常用的CSS預(yù)處理器有哪些:
    • SASS:基于Ruby ,通過服務(wù)端處理,功能強大。解析效率高。需要學(xué)習(xí)Ruby語言,上手難度高于LESS。
    • LESS:基于NodeJS,通過客戶端處理,使用簡單。功能比SASS簡單,解析效率也低于SASS,但在實際開發(fā)中足夠了,所以如果我們后臺人員如果需要的話,建議使用LESS。

0.4、行為層(JavaScript)

JavaScript一門弱類型腳本語言,其源代碼在發(fā)往客戶端運行之前不需要經(jīng)過編譯,而是將文本格式的字符代碼發(fā)送給瀏覽器,由瀏覽器解釋運行。

  • JavaScript框架
    • JQuery:大家熟知的JavaScript庫,優(yōu)點就是簡化了DOM操作,缺點就是DOM操作太頻繁,影響前端性能;在前端眼里使用它僅僅是為了兼容IE6,7,8;
    • Angular:Google收購的前端框架,由一群Java程序員開發(fā),其特點是將后臺的MVC模式搬到了前端并增加了模塊化開發(fā)的理念,與微軟合作,采用了TypeScript語法開發(fā);對后臺程序員友好,對前端程序員不太友好;最大的缺點是版本迭代不合理(如1代–>2 代,除了名字,基本就是兩個東西;截止發(fā)表博客時已推出了Angular6);
    • React:Facebook 出品,一款高性能的JS前端框架;特點是提出了新概念 【虛擬DOM】用于減少真實 DOM 操作,在內(nèi)存中模擬 DOM操作,有效的提升了前端渲染效率;缺點是使用復(fù)雜,因為需要額外學(xué)習(xí)一門【JSX】語言;
    • Vue:一款漸進式 JavaScript 框架,所謂漸進式就是逐步實現(xiàn)新特性的意思,如實現(xiàn)模塊化開發(fā)、路由、狀態(tài)管理等新特性。其特點是綜合了 Angular(模塊化)和React(虛擬 DOM) 的優(yōu)點;
    • Axios:前端通信框架;因為 Vue 的邊界很明確,就是為了處理 DOM,所以并不具備通信能力,此時就需要額外使用一個通信框架與服務(wù)器交互;當(dāng)然也可以直接選擇使用jQuery 提供的AJAX 通信功能。
  • UI框架
    • Ant-Design:阿里巴巴出品,基于React的UI框架;
    • ElementUI、iview、ice:餓了么出品,基于Vue的UI框架;
    • BootStrap:Teitter推出的一個用于前端開發(fā)的開源工具包;
    • AmazeUI:又叫“妹子UI”,一款HTML5跨屏前端框架。
  • JavaScript構(gòu)建工具:
    • Babel:JS編譯工具,主要用于瀏覽器不支持的ES新特性,比如用于編譯TypeScript。
    • WebPack:模塊打包器,主要作用就是打包、壓縮、合并及按序加載。

0.5、三端同一

  • 混合開發(fā)(Hybrid App)
  • 主要目的是實現(xiàn)一套代碼三端統(tǒng)一(PC、Android:.apk、iOS:.ipa)并能夠調(diào)用到設(shè)備底層硬件(如:傳感器、GPS、攝像頭等),打包方式主要有以下兩種:
    • 云打包:HBuild -> HBuildX,DCloud 出品;API Cloud
    • 本地打包: Cordova(前身是 PhoneGap)

1、什么是JavaScript

1.1、概述

JavaScript是一門世界上最流行的腳本語言

Java、JavaScript

開發(fā)歷程10天~

一個合格的后端人員,必須要精通JavaScript

1.2、歷史

https://blog.csdn.net/kese7952/article/details/79357868

ECMAScript它可以理解為是JacaScript的一個標(biāo)準(zhǔn)

最新版本已經(jīng)到se6版本~

但是大部分瀏覽器還只停留在支持es5代碼上!

開發(fā)環(huán)境—線上環(huán)境,版本不一致

2、快速入門

2.1、引入JavaSciprt

1、內(nèi)部標(biāo)簽

<script>//...... </script>

2、外部引入

abs.js

//。。。

test.html

<script src="abs.js"></script>

測試代碼

<!DOCTYPE html> <html lang="en"><head><meta charset="UTF-8" /><title>Title</title><!-- script標(biāo)簽內(nèi),寫javascript代碼 --><!-- <script>alert("hello,world");</script> --><!-- 外部引入 --><!-- 注意:script標(biāo)簽必須承兌出現(xiàn) --><script src="js/qj.js"></script><!-- 不用顯示定義type,也默認就是jacascript --><select type="text/jacascript"> </select></head><body><!-- 這里也可以存放 --></body> </html>

2.2、基本語法入門

<!-- JavaScript嚴(yán)格區(qū)分大小寫! --><script type="text/javascript">// 1. 定義變量 變量類型 變量名 = 變量值;var score = 61; // alert(num); // 2.條件控制if(score>60 && score<70){alert("60~70");}else if(score>70 && score<800){alert("70~80");}else{alert("other");}// console.log(score) 在瀏覽器的控制臺打印變量! System.out.println();/* 多行注釋asdf*/</script>

瀏覽器必備調(diào)試須知:

2.3、數(shù)據(jù)類型

數(shù)值,文本,圖形,音頻,視頻。。。。

變量

var 王者榮耀 = "倔強青銅"//高級符號和數(shù)字不能用來定義

number

js不區(qū)分小叔和整數(shù),Number

123 //整數(shù)123 123.1 //浮點數(shù)123.1 1.123e3 //科學(xué)計數(shù)法 -99 //負數(shù) NaN // not a number 不是一個數(shù)字 Infinity //表示無限大

字符串

‘a(chǎn)bc’ “abc”

布爾值

true (真) ,false (空)

邏輯運算

&& 與, 兩個都為正,結(jié)果為真|| 或 , 一個為正,結(jié)果為真! 非 ,真即假,假即真

比較運算符 !!!!!重要!

= 賦值符號 1 “1” == 等于(類型不一樣,值一樣,也會判斷為true) === 絕對等于(類型一樣,值一樣,結(jié)果為true)

這是一個JS的缺陷,堅持不要使用==比較

須知:

  • NaN==NaN,這個與所有的數(shù)值都不相等,包括自己
  • 只能通過isNaN(NaN)來判斷這個數(shù)是否是NaN

浮點數(shù)問題:

console.log((1/3 === (1-2/3)))

盡量避免使用浮點數(shù)進行運算,存在精度問題!

Math.abs(1/3-(1-2/3))<0.000000001

null和undefined

  • null 空
  • undefined 未定義

數(shù)組

Java的數(shù)值必須列想通類型的對象,JS中不需要這樣!

//保證代碼的可讀性,盡量使用【】var arr = [1,2,3,4,5,"hello",null,true];new Array(1,12,3,4,4,5,"hello");

取數(shù)組下標(biāo):如果越界了,就會

undefined

對象

對象是大括號,數(shù)組是中括號~~

每個屬性之間使用逗號隔開,最后一個不需要添加

// Person person = new Person(1,2,3,4,5);var person = {name: "qingjiang",age: 3,tags: ['js','java','web','...']}

取對象的值

person.name >"qingjiang" person.age >3

2.4、嚴(yán)格檢查格式

<!DOCTYPE html> <html><head><meta charset="utf-8"><title>Title</title><!-- 前提:IEDA 需要支持es6語法'use strict'; 嚴(yán)格檢查模式,預(yù)防JavaScript的隨意性導(dǎo)致產(chǎn)生的一些問題 必須寫在JavaScript第一行局部變量建議都使用let去定義~--><script>'use strict';// 全局變量let i = 1;// Es6 let </script></head><body></body> </html>

3、數(shù)據(jù)類型

3.1、字符串

1、正常字符串我們使用 ’ 單引號,或者 “ 雙引號包裹

2、注意轉(zhuǎn)義字符 \

\' 字符串 \n 換行 \t tabe \u4e2d \u#### Unicode字符 中 \X41 Asc11字符

3、 多行字符串編寫

// tab上面,esc下面 `var msg = `helloworld你好ya你好`

4.模板字符串

// tab上面,esc下面 ` let name = "qingjiang";let age = 3;let msg = `你好呀,${name}` //模板字符串 ${}

5、字符串長度

console.log(str.length) //字符串長度為 3

6、字符串的可變性,不可變

7、大小寫轉(zhuǎn)換方法

//注意,這里是方法,不是屬性了 console.log(student.toUpperCase()) //轉(zhuǎn)換為大寫 console.log(student.toLowerCase()) //轉(zhuǎn)換為小寫

8、student.indexOf(‘t’)

console.log(student.indexOf('t')) //輸出為1,輸出t在字符中的第幾個位置

9、substring

[) console.log(student.substring(1)) //輸出tudent,作用為截取字符第1個字符串到最后一個字符串 console.log(student.substring(1,3)) //輸出tu [1,3)從第一個字符串截取到第三個字符中間的字符(有第0個字符串)

3.2 數(shù)組

Array可以包含任意的數(shù)組類型

var arr = [1,2,3,4,5,6]; //通過下標(biāo)取值和賦值 arr[0] arr[0] = 1

1、長度

arr.length //輸出為6 arr.length = 10 //輸出為10,(10) [1, 2, 3, 4, 5, 6, 空 ×4]

注意:假如給arr.length賦值,數(shù)組大小就會發(fā)生變化~,如果賦值過小,元素就會丟失

2、indexOf,通過元素獲得下標(biāo)索引

arr = [1,2] arr.indexof(2) //輸出為1,代表2在arr中是第一個位置。(數(shù)字1為0的位置)

字符串的“1”和數(shù)字 1 是不同的

arr = [1,2,3,4,5,6,"1","2"] //(8) [1, 2, 3, 4, 5, 6, '1', '2'] arr.indexOf(1) //0 arr.indexOf("1") //6

3、slice() 數(shù)組版的substring,截取Array的一部分,返回一個新數(shù)組

類似于String中的substring

arr = [1,2,3,4,5,6,"1","2"] arr.slice(3) //(5) [4, 5, 6, '1', '2'] arr.slice(1,5) //(4) [2, 3, 4, 5]

4、push() : 壓入到尾部,在數(shù)組的后面添加元素

? pop (): 彈出尾部的一個元素,在數(shù)組的后面刪除元素

? (括號中添加數(shù)字效果不變)

arr //(8) [1, 2, 3, 4, 5, 6, '1', '2'] arr.push('a','b') //10 arr //(10) [1, 2, 3, 4, 5, 6, '1', '2', 'a', 'b'] arr.pop() //'b' arr //(9) [1, 2, 3, 4, 5, 6, '1', '2', 'a'] arr.pop(4) //'a' arr //(8) [1, 2, 3, 4, 5, 6, '1', '2'] arr.pop('4') //'2' arr //(7) [1, 2, 3, 4, 5, 6, '1']

5、unshif() ,shift() 頭部

? unshif() 壓入到頭部,在頭部添加元素

? shif() 彈出頭部的一個元素,在頭部彈出元素

arr //(7) [1, 2, 3, 4, 5, 6, '1'] arr.unshift('a','b') //9 arr //(9) ['a', 'b', 1, 2, 3, 4, 5, 6, '1'] arr.shift() //'a' arr.shift() //'b' arr //(7) [1, 2, 3, 4, 5, 6, '1']

6、排序 sort()

arr //(3) ['B', 'C', 'A'] arr.sort() //(3) ['A', 'B', 'C']

7、元素反轉(zhuǎn) reverse()

//(3) ['A', 'B', 'C'] arr.reverse() //(3) ['C', 'B', 'A']

8、concat()

//(3) ['C', 'B', 'A'] arr.concat([1,2,3]) //(6) ['C', 'B', 'A', 1, 2, 3] arr //(3) ['C', 'B', 'A']

注意: concat()并沒有修改數(shù)組,只是會返回一個新的數(shù)組

9、連接符 join

打印拼接數(shù)組,使用特定的字符串連接

//(3) ['C', 'B', 'A'] arr.join('-') //'C-B-A'

10、多維數(shù)組

arr = [[1,2],[3,4],["5","6"]]; arr[1][1] //4 第一個1代表著數(shù)組里面的第一個數(shù)組,第二個1代表第一個數(shù)組里面的第一個元素

數(shù)組:存儲數(shù)據(jù)(如何存,如何取,方法都可以自己實現(xiàn)!)

3.3、對象

若干個鍵值對

var 對象名 = {屬性名: 屬性值,屬性名: 屬性值,屬性名: 屬性值,} //定義了一個person對象,它具有person屬性 var person = {name: "kuangshen",age: 3,email: "123456789@qq.com",score: 0}

js中對象,{…}表示一個對象,鍵值對描述屬性xxxx: xxxx,多個屬性之間使用逗號隔開,最后一個屬性不加逗號!。

JavaScript中所有的鍵都是字符串,值是任意對象!

1、對象賦值

person.name //'kuangshen' person.name = "qingjiang" //'qingjiang' person.name //'qingjiang'

2、使用一個不存在的對象屬性,不會報錯! undefined

person.haha //undefined

3、動態(tài)的刪減屬性,通過 delete刪除對象屬性

person //{name: 'qingjiang', age: 3, email: '123456789@qq.com', score: 0} delete person.name //true person //{age: 3, email: '123456789@qq.com', score: 0}

4、動態(tài)的添加

person.haha = "haha" //'haha' person //{age: 3, email: '123456789@qq.com', score: 0, haha: 'haha'}

5、判斷屬性值是否在這個對象中! xxx in xxx!

person //{age: 3, email: '123456789@qq.com', score: 0, haha: 'haha'} 'age' in person //true//繼承 'toString' in person //true

6、判斷一個屬性是否是這個對象自身擁有的 hasOwnProperty()

person.hasOwnProperty('toString') //false person.hasOwnProperty('age') //true

3.4、流程控制

if 判斷

<script>'use strict'var age = 3;if(age>3){ //第一個判斷alert("haha");}else id(age<5){ //第二個判斷alert("kawa~");}else { //否則,,alert("kuwa~~");}</script>

while循環(huán),避免程序死循環(huán)

<script>'use strict'var age = 3;while(age<100){ //當(dāng)age小于3age = age +1; //新的age等于舊的age+1console.log(age) //開始輸出新的age,小于100繼續(xù) 循環(huán),直到等于或大于100} do{age = age + 1;console.log(age) }while(age<100)//do循環(huán)一定會執(zhí)行,while循環(huán)會先判斷,有可能不執(zhí)行</script>

死循環(huán)

'use strict'var age = 3; while(true){alert(123)} //頁面會出現(xiàn)一個關(guān)不掉的內(nèi)容為123的彈窗

for循環(huán)

for(let i = 0; i <100 ; i++){console.log(i) }//打印1-99

forEach 循環(huán)

5.1引入的

var age = [12,3,12,3,12,3,12,31,23,123];//函數(shù),跟方式一樣age.forEach(function(value){console.log(value)}) //打印出數(shù)組

? forEach 語法:

forEach方法中的function回調(diào)有三個參數(shù):
第一個參數(shù)是遍歷的數(shù)組內(nèi)容,
第二個參數(shù)是對應(yīng)的數(shù)組索引,
第三個參數(shù)是數(shù)組本身

[ ].forEach(function(value,index,array){

for…in

var age = [12,3,12,3,12,3,12,31,23,123];/*for(Type ste: el){}*///for(var index in object){}for(var num in age){if(age.hasOwnProperty(num)){console.log("存在")console.log(age[num])}} //index為數(shù)組的下標(biāo)索引,num //假設(shè)不知道age(object)的num大小情況下使用會快一點

3.5、Map 和 Set

ES6的新特性~

Map:

'use strict'//ES6 Map //學(xué)生的成績,學(xué)生的名字//var names = ["tom","jack","haha"];//var scores = [100,90,80];var map = new Map([['tom',100],['jack',90], ['haha',80]])var name = map.get('tom'); //使用get方法通過key獲得 valuemap.set('admin',123456); //通過set方法添加key(在尾 部)console.log(name);map.delete("tom"); //刪除

Set: 無序不重復(fù)的集合

var set = new Set([3,1,1,1,1,1,"123",123,'123']); //set可以去重(包括字符串、數(shù)字。。)set.add(2) //add方法添加元素set.delete(1) //delete方法刪除元素 console.log(set.has(3)); //打印set數(shù)組里是否含有3console.log( Array.from(set) ); //打印set里的所有元素

3.6、 interator

ES6的新特性~

作業(yè):使用 interator 來遍歷迭代我們Map,Set!

遍歷數(shù)組

//通過for of / for in 下標(biāo) var arr = [3,4,5]for(var x of arr){ //of換成in打印索引,of打印具體的值console.log(x)}

遍歷map

var map = new Map([["tom",100],["jack",90],["haha",80]]);for (let x of map){console.log(x)}

遍歷set

var set = new Set([5,6,7]);for (let x of set){console.log(x)}

4、函數(shù)

方法:對象(屬性,方法)

函數(shù):放到外面就是函數(shù),放的位置不同

4.1、定義函數(shù)

定義方式一

絕對值函數(shù)

//public 返回值類型 方法名(){ // return 返回值; //} function abs(x){ //函數(shù) 方法名if(x>=0){return x;}else{return -x;} }

一但執(zhí)行到 return代表函數(shù)結(jié)束,返回結(jié)果!

如果沒有執(zhí)行 return,函數(shù)執(zhí)行完也會返回結(jié)果,結(jié)果就是undefined

定義方式二

var abs = function(x){if(x>=0){return x;}else{return -x;} }

function(x){…}這是一個匿名函數(shù)。但是可以把結(jié)果賦值給 abs,通過 abs就可以調(diào)用函數(shù)!

方式一和方式二等價!,表達起來一樣,個人習(xí)慣用哪個方法

調(diào)用函數(shù)

abs(10) //10 abs(-10) //10

參數(shù)問題: javaScript 可以傳任意個參數(shù),也可以不傳遞參數(shù)~

參數(shù)進來是否存在的問題?

假設(shè)不存在參數(shù),如何規(guī)避?

var abs = function(x){ //手動拋出異常來判斷,如果x不等于 number,則打印Not a Numberif(typeof x!== 'number'){throw 'Not a Number';}if(x>=0){return x;}else{return -x;} }

arguments

arguments是一個JS免費贈送的關(guān)鍵字;

代表,傳遞進來的所有的參數(shù),是一個數(shù)組!

var abs = function(x){ //傳送11,打印11,傳送11,12 打印成數(shù)組console.log("x=>"+x);for(var i =0; i<arguments.length;i++){console.log(arguments[i])}if(x>=0){return x;}else{return -x;} }

問題: arguments包含所有的參數(shù),我們有時候想使用多余的參數(shù)來進行附加操作。需要排除已有參數(shù)~

rest

以前:

if (arguments.length>2){for (var i = 2; i<arguments.length;i++){} }

ES6 引入的新特性,獲取出了已經(jīng)定義的參數(shù)之外的所有參數(shù)~。。。

function aaa(a,b,...rest){console.log("a=>"+a);console.log("b=>"+b);console.log(rest);}

rest 參數(shù)只能寫在坐后面,必須用 … 標(biāo)識。

4.2、變量的作用域

在javascript中,var 定義的變量實際是有作用域的。

假設(shè)在函數(shù)體中聲明,則在函數(shù)體外不可以使用~ (非要想實現(xiàn)的話,后面可以研究一下 閉包

'use strict'function qj() {var x = 1;x = x + 1;}x = x + 2; //Uncaught ReferenceError: x is not defined

如果兩個函數(shù)使用了想通的變量名,只要在函數(shù)內(nèi)部,就不沖突

function qj() {var x = 1;x = x + 1;} function qj2() {var x = 'A';x = x + 1;}

內(nèi)部函數(shù)可以訪問外部函數(shù)的成員,反之則不行

function qj() {var x = 1;// 內(nèi)部函數(shù)可以訪問外部函數(shù)的成員,反之則不行function qj2() {var y = x + 1; //2}var z = y + 1; //變量的作用域.html:28 Uncaught ReferenceError: y is not define}

假設(shè),內(nèi)部函數(shù)變量和外部函數(shù)的變量,重名!

function qj() {var x = 1;function qj2() {var x = 'A'; console.log('inner'+x); //outer1}console.log('outer'+x); //innerAqj2()}qj()

假設(shè)在javascript中 函數(shù)查找從變量自身函數(shù)開始~,由 “內(nèi)” 向 “外“查找。假設(shè)外部存在這個同名的函數(shù)變量,則內(nèi)部函數(shù)會屏蔽外部函數(shù)的變量。

(如上,內(nèi)部跟外部函數(shù)都有x,先算內(nèi)部x)

提升變量的作用域

function qj(){var x = "x" + y;console.log(x);var y = 'y';}qj(); //xundefined

結(jié)果:xundefined

說明:js 執(zhí)行引擎,自動提升了y的聲明,但是不會提升變量y的賦值;

function qj(){var y = 'y';var x = "x" + y;console.log(x); }qj(); // xy

這個是在JavaScript建立之初就存在的特性。養(yǎng)成規(guī)范:所有的變量定義都放在函數(shù)的頭部,不要亂放,便于代碼維護;

function qj2(){ var x = 1,y = x + 1,z,i; //undefined // 之后隨意用}

全局函數(shù)

//全局變量var x = 1;function f(){console.log(x);}f();console.log(x);

全局對象 window

var x = 'xxx';alert(x); alert(window.x); //默認所有的全局變量,都會自動綁定在 window 對象下;

? 電腦會彈出兩個內(nèi)容為 ‘xxx’ 的彈窗

!!! alert() 這個函數(shù)本身也是一個 window 變量

var x = 'xxx';window.alert(x); // winidow.alert(window.x); //默認所有的全局變量,都會自動綁定在 window 對象下;var old_alert = window.alert;// old_alert(x);window.alert = function (){};// 發(fā)現(xiàn)alert()失效了,只彈窗xxxwindow.alert(123);//恢復(fù)window.alert = old_alert;window.alert(456);

JavaScript 實際上只有一個全局作用域,任何變量(函數(shù)也可以視為變量),假設(shè)沒有在一個函數(shù)的作用范圍內(nèi)找到,就會向外查找,如果在全局作用域都沒有找到,就會報錯 RefrenceError

規(guī)范

由于我們所有的全局變量都會綁定到我們的 window 上。如果不痛的 js 文件,使用了相同的全局變量,就會產(chǎn)生沖突~> 如何能夠減少沖突?

// 唯一全局變量var KuangApp = {};//定義全局變量KuangApp.name = 'kuangshen';KuangApp.add = function (a,b){return a + b;}

把自己的代碼全部放入自己定義的唯一空間名字中,降低全局命名沖突的問題~

jQuery

!!! 局部作用域 let

function aaa(){for (var i = 0;i < 100; i++){console.log(i)}console.log(i+1); //問題? i 出了這個作用域還可以使用} //打印 1~101

ES6 let 關(guān)鍵字,解決局部作用域沖突問題

function aaa(){for (let i = 0;i < 100; i++){console.log(i)}console.log(i+1); //問題? i 出了這個作用域還可以使用} //打印 1~99,然后報錯 Uncaught ReferenceError: i is not defined at aaa

建議大家都是用 let 去定義局部作用域的變量;

常量 const

在 ES6 之前,怎么定義常量:只有用全部大寫字母命名的變量就是常量;建議不要修改這樣的值

var PI = '3.14';console.log(PI);PI = '123'; //可以改變z這個值console.log(PI);

在 ES6 引入了常量關(guān)鍵字 const

const PI = '3.14'; //只讀console.log(PI);PI = '123'; //Uncaught TypeError: Assignment to constant variable.console.log(PI);

4.3、方法

定義方法

方法就是把函數(shù)放在對象的里面,對象只有兩個東西:屬性和方法

var kuangshen = {name: '秦疆',bitrh: 1999,// 方法age: function(){// 今年 - 出生的年var now = new Date().getFullYear();return now-this.bitrh;}} //屬性 kuangshen.name //方法,一定要帶 () kuangshen.age()

this. 代表什么?拆開上面的代碼看看~

function getAge(){// 今年 - 出生的年var now = new Date().getFullYear();return now-this.bitrh; }var kuangshen = {name: '秦疆',bitrh: 1999,age: getAge}// kuangshen.age() ok// getAge() 打印 NAN window

this 是無法指向的,是默認指向調(diào)用它的那個對象;

apply

在js中可以控制this指向!

function getAge(){// 今年 - 出生的年var now = new Date().getFullYear();return now-this.bitrh; }var kuangshen = {name: '秦疆',bitrh: 1999,age: getAge}; // kuangshen.age() ok getAge.apply(kuangshen,[]); //this, 指向 kungshen,參數(shù)為空

5、內(nèi)部對象

標(biāo)準(zhǔn)對象

typeof 123 'number' typeof '123' 'string' typeof true 'boolean' typeof NaN 'number' typeof [] 'object' typeof {} 'object' typeof Math.abs 'function' //函數(shù)類型 typeof undefined 'undefined'

5.1、Date

基本使用

var now = new Date(); //Thu Mar 10 2022 16:00:07 GMT+0800 (中國標(biāo)準(zhǔn)時間)now.getFullYear(); //現(xiàn)在的年now.getMonth(); //現(xiàn)在的月 0~11 代表月,老外now.getDate(); //現(xiàn)在的日now.getDay(); //星期幾now.getHours(); //現(xiàn)在的時now.getMinutes(); //現(xiàn)在的分now.getSeconds(); //現(xiàn)在的秒now.getTime(); //時間戳 全世界統(tǒng)一 1970 1.1 0:00:00 毫秒數(shù)console.log(new Date(1646899612102)) //時間戳轉(zhuǎn)為時間

轉(zhuǎn)換

now = new Date(1646899612102) //Thu Mar 10 2022 16:06:52 GMT+0800 (中國標(biāo)準(zhǔn)時間) now.toLocaleString //注意,調(diào)用是一個方式,不是一個屬性! //? toLocaleString() { [native code] } now.toLocaleString() //'2022/3/10 16:06:52' now.toGMTString() //'Thu, 10 Mar 2022 08:06:52 GMT'

5.2、JSON

json 是什么

早期,所有數(shù)據(jù)傳輸習(xí)慣使用 XML 文件!

  • JSON(JavaScript Object Notation, JS 對象簡譜) 是一種輕量級的數(shù)據(jù)交換格式。
  • 簡潔和清晰的層次結(jié)構(gòu)使得 JSON 成為理想的數(shù)據(jù)交換語言。
  • 易于人閱讀和編寫,同時也易于機器解析和生成,并有效地提升網(wǎng)絡(luò)傳輸效率。

在JavaScript 一切皆對象、任何 js 支持的類型都可以用JSON來表示;number, string…

格式:

  • 對象都用 {}
  • 數(shù)組都用 []
  • 所有的鍵值對 都是使用 key:value

JSON 字符串和 JS 對象的轉(zhuǎn)換

var user = {name : "qinjiang",age : 3,sex : '男'}//對象轉(zhuǎn)化為json字符串 {"name":"qinjiang","age":3,"sex":"男"}// stringify 轉(zhuǎn)化層,對象轉(zhuǎn)化為字符串var jsonUser = JSON.stringify(user)//json 字符串轉(zhuǎn)化為對象 參數(shù)為 json 字符串,parse解析,把字符串解析為對象var obj = JSON.parse('{"name":"qinjiang","age":3,"sex":"男"}')

很多人搞不清楚,JSON 和 JS 對象的區(qū)別

var obj = {a: 'hello',b:'hellob'}; var json = '{"a": "hello","b":"hellob"}';

5.3、Ajax

  • 原生的 js 寫法 xhr 異步請求
  • jQuey 封裝好的 方法 $("#name").ajax("")
  • axios 請求

6、面向?qū)ο缶幊?/h1>

原型對象

javascript、Java、c#。。。。面向?qū)ο?#xff1b; javascript 有些區(qū)別!

  • 類:模板 原型對象
  • 對象:具體的實例

在 JavaScript 這個需要大家換一下思維方式!

原型:

var Student = {name : "qinjiang",age : 3,run: function(){console.log(this.name + "run...");}};var xiaoming = {name: "xiaoming"};//原型對象xiaoming.__proto__ = Student;var Bird = {fly: function(){console.log(this.name + "fly...");}};//小明的原型 是 Birdxiaoming.__proto__ = Bird; function Student(name) {this.name = name;}// 給student 新增一個方法Student.prototype.hello = function(){alert('Hello')};

class 繼承

class 關(guān)鍵字,是在ES6引入的

1、定義一個類,屬性,方法

//ES6 之后==========// 定義一個學(xué)生的類class Student{constructor(name){ //constructor 構(gòu)造器this.name = name;}hello(){alert('hello')}} var xiaoming = new Student("xiaoming") var xiaohong = new Student("xiaohong") xiaoming.hello() //彈出內(nèi)容為hello 的窗口

2、繼承

<script>// 定義一個學(xué)生的類class Student{constructor(name){ //constructor 構(gòu)造器this.name = name;}hello(){alert('hello')}}class XiaoStudent extends Student{ //extends 繼承的意思constructor(name,grade) {super(name); //super 調(diào)用繼承了的構(gòu)造類 namethis.grade = grade;}myGrade(){alert('我是一名小學(xué)生')}}var xiaoming = new Student("xiaoming")var xiaohong = new XiaoStudent("xiaohong",1) </script>

本質(zhì):查看對象原型

原型鏈

— proto —:

7、操作BOM對象(重點)

瀏覽器

JavaScript 和 瀏覽器關(guān)系?

JavaScript 誕生就是為了能夠讓他在瀏覽器中運行!

BOM:瀏覽器對象模型

  • IE 6 ~ 11
  • Chrome
  • Safari
  • FireFox Linux的默認瀏覽器
  • Opera

三方

  • QQ瀏覽器
  • 360瀏覽器

window (重要)

window 代表 瀏覽器窗口

window.alert(1) undefined window.innerHeight 322 window.innerWidth 1536 window.outerHeight //外部高度 824 window.outerWidth 1536 window.innerHeight //內(nèi)部高度 194 //打架可以調(diào)整瀏覽器窗口試試。。。

Navigator(不建議使用)

Navigator,封裝了瀏覽器的信息

window.Navigator.appName undefined navigator.appName 'Netscape' navigator.appVersion //當(dāng)前瀏覽器版本 '5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36 Edg/99.0.1150.36' navigator.userAgent 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36 Edg/99.0.1150.36' navigator.platform 'Win32'

多數(shù)時候,我們不會使用 navigator 對象,因為會被人為修改!

不建議使用這些屬性來判斷和編寫代碼

screen

screen.width 1536 px screen.height //計算機屏幕 864 px //screen代表全屏幕屬性

代表屏幕尺寸

location (重要)

location 代表當(dāng)前頁面的URL信息

hash: "" host: "www.baidu.com" //主機 hostname: "www.baidu.com" href: "https://www.baidu.com/" //當(dāng)前指向的位置 origin: "https://www.baidu.com" pathname: "/" port: "" protocol: "https:" //協(xié)議 reload: ? reload() //方法,重新加載,刷新網(wǎng)頁 //設(shè)置新的地址 location.assign('https://hao123.com/')

document (內(nèi)容;DOM)

document 代表當(dāng)前的頁面, HTML DOM文檔樹

document.title '百度一下,你就知道' document.title='狂神說' '狂神說'

獲取具體的文檔樹節(jié)點

<dl id="app"><dt>Java</dt><dd>JavaSE</dd><dd>JavaEE</dd> </dl><script>var dl = document.getElementById('app'); //獲取節(jié)點 </script>

獲取 cookie

document.cookie 'pglt-edgeChromium-ntp=43;

劫持 cookie 原理

www.taobao.com

<script src="aa.js"></script> <!-- 惡意人員:獲取你的cookie上傳到他的服務(wù)器 -->

服務(wù)器端可以設(shè)置 cookie:httpOnly //只讀

hisory (不建議使用)

history.back() //后退 history.forward() //前進

hisory 代表瀏覽器的歷史紀(jì)錄

8、操作DOM對象(重點)

DOM:文檔對象模型,

核心

整個瀏覽器網(wǎng)頁就是一個Dom 樹形結(jié)構(gòu)!

  • 更新:更新Dom節(jié)點
  • 遍歷dom節(jié)點:得到Dom節(jié)點
  • 刪除:刪除一個Dom節(jié)點
  • 添加:添加一個新的節(jié)點

要操作一個Dom節(jié)點,就必須要先獲得這個Dom節(jié)點

獲得Dom節(jié)點

//對應(yīng) css 選擇器var h1 = document.getElementsByTagName('h1'); //標(biāo)簽選擇器var p1 = document.getElementById('p1'); //id選擇器var p2 = document.getElementsByClassName('p2'); //class選擇器var father = document.getElementById('father');var childrens = father.children[index]; //獲取父節(jié)點下的所有子節(jié)點//father.firstChild 獲取第一個節(jié)點//father.lastChild 獲取第二個節(jié)點//father.nextSibling 獲取下一個節(jié)點

這是原生代碼,之后我們盡量都是使用jQuery();

更新節(jié)點

<div id="id1"> </div> <script>var id1 = document.getElementById('id1'); </script>

操作文本

  • id1.innerText=“123” 修改文本的值
  • id1.innerHTML=’< strong >123</ strong>’ 可以解析HTML文本標(biāo)簽

操作 JS,CSS

id1.style.color = 'red'; //屬性使用 字符串 包裹 'red' id1.style.fontSize='20px' //- 轉(zhuǎn) 駝峰命名問題 '20px' id1.style.padding='2em' '2em'

刪除節(jié)點

刪除節(jié)點的步驟:先獲取父節(jié)點,再通過父節(jié)點刪除自己

<div id="father"> <h1>標(biāo)題一</h1> <p id="p1">p1</p> <p class="p2">p2</p> </div> <script>var self = document.getElementById('p1'); var father = p1.parentElement;father.removeChild(self)//刪除是一個動態(tài)的過程。father.removeChild(father.children[0])father.removeChild(father.children[1])father.removeChild(father.children[2]) </script> father.removeChild()

注意:刪除多個節(jié)點的時候,children 是在時刻變化的,刪除節(jié)點的時候一定要注意!(就是1被刪除的時候,2會自動變成1)

插入節(jié)點

我們獲得了某個Dom節(jié)點,假設(shè)這個dom節(jié)點是空的,我們通過 innerHtmL 就可以增加一個元素了,但是這個DOM節(jié)點已經(jīng)存在元素了,我們就不能這么干了!會產(chǎn)生覆蓋

追加

<p id="js">JavaScript</p> <div id= "list"><p id="se">JavaSE</p><p id="ee">JavaEE</p><p id="me">JavaME</p> </div><script>var js = document.getElementById('js');var list = document.getElementById('list');list.appendChild(js) //追加到后面//原先js在瀏覽器中l(wèi)ist(div)的前面,現(xiàn)在在me的后面//JavaScript JavaSE//JavaSE JavaEE//JavaEE JavaME//JavaME JavaScript </script>

效果

創(chuàng)建一個新的標(biāo)簽,實現(xiàn)插入

<script>var js = document.getElementById('js'); //已存在的節(jié)點var list = document.getElementById('list');//通過 JS 創(chuàng)建一個新的節(jié)點var newP = document.createElement('p');// 創(chuàng)建一個p標(biāo)簽newP.id = 'newP';newP.innerText = 'Hello,Kuangshen';//list.appendChild(newP);// 可以創(chuàng)建一個Style標(biāo)簽var myStyle = document.createElement('style'); //創(chuàng)建了一個空sstyle標(biāo)簽myStyle.setAttribute('type','text/css');myStyle.innerHTML = 'body{ background-color: chartreuse;}'; //這是標(biāo)簽內(nèi)容document.getElementsByTagName('head')[0].appendChild(myStyle); </script>

insert(插入)

<p id="js">JavaScript</p> <div id= "list"><p id="se">JavaSE</p><p id="ee">JavaEE</p><p id="me">JavaME</p> </div> <script>var ee = document.getElementById('ee');var js = document.getElementById('js');var list = document.getElementById('list');var me = document.getElementById('me');var se = document.getElementById('se');//要包含的節(jié)點.insertBefore(newNode,targetNode)list.insertBefore(js,ee);//在list里面,新的一個js插入在ee的前面

9、操作表單(驗證)

表單是什么 form DOM 樹

  • 文本框 text
  • 下拉框 < select >
  • 單選框 radio
  • 多選框 checkbos
  • 隱藏域 hidden
  • 密碼框 password
  • 。。。

表單的目的:提交信息

獲得要提交的信息

<form action="post"><p><span>用戶名:</span><input type="text" id="username"></p><!-- 多選框的值,就是定義好的 value 值 --><p><span>性別:</span><input type="radio" name="sex" value="man" id="boy"/><input type="radio" name="sex" value="women" id="girl"/></p></form><script>var input_text = document.getElementById('username');var boy_radio = document.getElementById('boy');var girl_radio = document.getElementById('girl');//得到輸入框的值input_text.value//修改輸入框的值input_text.value = '123'// 對于單選框,多選框等等固定的值boy_radio.value 只能取到當(dāng)前的值boy_radio.checked //查看返回的結(jié)果,是否為true,若果為true,則被選中~// false// girl_radio.checked// truegirl_radio.checked = true//賦值//trueboy_radio.checked = true//true</script>

提交表單。md5 加密密碼,表單優(yōu)化

<!-- 表單綁定提交事件 onsubmit= 綁定一個提交檢測的函數(shù) , truefalse 將這個結(jié)果返回表單, 使用 onsubmit 接受! onsubmit="return aaa()" --> <form action="https://www.baidu.com/" method="post" onsubmit="return aaa()"><p><span>用戶名:</span> <input type="text" id="username" name="username"></p><!-- 多選框的值,就是定義好的 value 值 --><p><span>密碼:</span> <input type="password" id="input-password" ></p><input type="hidden" name="password" id="md5-password" /><!-- 綁定時間 onclick 被點擊 --><button type="submit" >提交</button></form><script>function aaa() {alert(1);var uname = document.getElementById('username');// var pwd = document.getElementById('password');var pwd = document.getElementById('input-password');var md5pwd = document.getElementById('nd5-password');// console.log(uname.value);// console.log(pwd.value);// // MD5 算法// pwd.value = md5(pwd.value);// console.log(pwd.value);md5pwd.value = md5(pwd.value);// 可以效驗判斷表單內(nèi)容, true就是通過提交,false,阻止提交return true;}</script>

10、jQuery

JavaScript

jQuery庫,里面存在大量的 Javascript函數(shù)

獲取

公式: $(selector).action()
符號(選擇器). 事件(事件函數(shù))

<!DOCTYPE html> <html lang="en"><head><meta charset="UTF-8" /><title>Title</title><!-- <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.js"></script> --><script src="lib/jquery-3.6.0.js"></script></head><body><!-- 公式: $(selector).action() 符號(選擇器).action()--><a href="" id="test-jquery">點我</a><script>var id = document.getElementById('id');id.click()//選擇器就是css的選擇器$('#test-jquery').click(function(){alert('hello,jQuery');})</script></body> </html>

選擇器

//原生 js,選擇器少,麻煩不好記//標(biāo)簽document.getElementsByTagName();//IDdocument.getElementById();//類document.getElementsByClassName();// jQuery css 中的選擇器它全都可以用$('p').click(); //標(biāo)簽選擇器$('#id1').click(); //id選擇器$('.class1').click(); //id選擇器

文檔工具站:http://jquery.cuishifeng.cn/

事件

鼠標(biāo)事件,鍵盤事件,其他事件

設(shè)置捕獲鼠標(biāo)動態(tài)定位

<!DOCTYPE html> <html lang="en"><head><meta charset="UTF-8" /><title>Title</title><script src="lib/jquery-3.6.0.js"></script><style>#divMove{width: 500px;height: 500px;border: 1px solid red;}</style></head><body><!-- 要求:獲取鼠標(biāo)當(dāng)前的坐標(biāo) -->mouse: <span id="mouseMove"></span><div id="divMove">在這里移動鼠標(biāo)試試</div><script>//當(dāng)網(wǎng)頁元素加載完畢之后,響應(yīng)事件// $(document).ready(function (){// 默認文檔 默認加載完// }) 的簡寫如下$(function () {$('#divMove').mousemove(function (e) {$('#mouseMove').text('x:'+e.pageX + 'y:'+e.pageY)})});</script></body> </html>

操作DOM

節(jié)點文本操作

$('#test-ul li[name="python"]').text(); //屬性選擇器;獲得值 $('#test-ul li[name="python"]').text('設(shè)置值'); //設(shè)置值 $('#test-ul ').html(); //獲得值 $('#test-ul ').html(); //設(shè)置值 //區(qū)別:text()只能改變文本,html()可以改變頁面標(biāo)簽代碼

css的操作

$('#test-ul li[name="python"]').css("color","red");

元素的顯示和隱藏:本質(zhì) display = none

$('#test-ul li[name="python"]').show(); //顯示 $('#test-ul li[name="python"]').hide(); //隱藏

娛樂測試

$(window).width() //1536 $(window).height() //287 $('#test-ul li[name="python"]').toggle();

未來 ajax();

$('#from').ajax()$.ajax({ url: "test.html", context:docment.body, success: function(){$(this).addclass("done"); }})

小技巧

1、如果鞏固 JS (看jQuery 源碼)

2、鞏固HTML.CSS (扒網(wǎng)站,全部down下來,然后對應(yīng)修改看效果~)

Layer 彈窗組件

Element-ui

總結(jié)

以上是生活随笔為你收集整理的狂神说js学习笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

日本久久久影视 | 国产精品v欧美精品v日韩 | 国产手机在线播放 | 国产精品久久久久999 | 热久久精品在线 | av网站地址 | 国内精品在线观看视频 | 中文字幕av最新 | 天天操天天是 | 毛片网在线 | 国产精品中文久久久久久久 | 日韩欧美精品一区二区三区经典 | 亚洲激情电影在线 | 日韩av成人在线 | 最新av网址在线观看 | 天天操天天射天天插 | 久久精品久久精品久久精品 | 视频高清 | 97超碰人人澡 | 视频福利在线观看 | 天天插综合| 国产高清视频免费最新在线 | 国产精品1区2区 | 狠狠操狠狠插 | 亚洲色五月 | 超碰精品在线 | 国产精品国产三级在线专区 | 热久在线 | 中国一级特黄毛片大片久久 | 99在线热播| 奇米影视777四色米奇影院 | 日韩av在线一区二区 | 中文字幕在线观看第二页 | 视频在线一区二区三区 | 国产精品一区二区三区视频免费 | 久久电影日韩 | 91精品国产福利 | 韩国精品一区二区三区六区色诱 | 亚洲香蕉视频 | 天天插天天爱 | 91精品免费在线视频 | 国产视频91在线 | 国产电影一区二区三区四区 | 97色狠狠| 日韩精品一区在线观看 | 国产特级毛片aaaaaaa高清 | 在线看成人 | 久久中文字幕在线视频 | 成人h在线 | 不卡国产视频 | 在线电影播放 | 日韩一二区在线 | 国产精品久久久久久久久久免费 | 亚洲四虎影院 | 欧美日韩二三区 | 在线亚洲小视频 | 天堂av在线网 | 97偷拍视频 | 国产视频在线一区二区 | 精品成人a区在线观看 | 久久精品在线免费观看 | av中文字幕不卡 | 国产精品6 | 国产精品久久在线观看 | 99国产精品久久久久老师 | 色综合久久88色综合天天6 | 中文字幕资源在线观看 | 天天弄天天干 | 一区二区中文字幕在线播放 | 久久超碰网 | 日韩在线三区 | 亚洲作爱视频 | 久久免费福利视频 | 国产一级二级在线播放 | 亚洲天堂网在线视频观看 | 色资源在线观看 | 国产清纯在线 | 久久久不卡影院 | 日本黄色大片儿 | 超碰日韩在线 | 9999在线观看| 美女视频黄在线观看 | 国产精品麻豆视频 | 在线久热 | 免费看国产精品 | 亚洲三级毛片 | 日韩精品大片 | 久久久久久久久久久久久影院 | 国产福利一区在线观看 | 亚洲四虎在线 | 久久不见久久见免费影院 | 毛片美女网站 | 日本久久免费电影 | 日韩久久精品一区二区 | 日韩,中文字幕 | 欧美极度另类 | 国产美女永久免费 | 欧美超碰在线 | 在线一区av | 免费情趣视频 | 日韩av一区二区在线 | 成人一区二区三区在线 | 友田真希av| 97av在线| 97超碰在线久草超碰在线观看 | 天堂av色婷婷一区二区三区 | 6699私人影院 | 亚洲第一伊人 | 久久精品国产成人 | 亚洲区精品视频 | 国产色视频网站 | 日韩视频免费看 | 91av观看| 在线视频观看亚洲 | 999国内精品永久免费视频 | 91一区一区三区 | 99一区二区三区 | 国产又粗又猛又色又黄视频 | 免费看成人av | 狠狠干婷婷色 | 久久综合九色欧美综合狠狠 | 婷婷丁香花五月天 | 国产又粗又硬又长又爽的视频 | 91在线免费播放 | 国产偷国产偷亚洲清高 | 亚洲成色| 探花视频在线观看 | 亚洲日韩精品欧美一区二区 | 国产精品亚洲精品 | 国内偷拍精品视频 | 成人动图 | 久久久久久久av | 91精品区 | 日日爽夜夜操 | 中文字幕刺激在线 | 在线视频18在线视频4k | 日韩av电影手机在线观看 | 久久久久久久久久久成人 | 久久另类小说 | 久久久久久久久综合 | 97超在线| 国产精品女 | 免费黄色在线网址 | 国产色婷婷在线 | 69国产盗摄一区二区三区五区 | 久久麻豆视频 | 欧美另类视频 | 国产精品99久久久久久武松影视 | 97理论电影 | 欧美黄色高清 | 亚洲日本国产精品 | 激情 一区二区 | www色com| 日韩高清免费观看 | 天天操导航 | 99在线视频网站 | 国产精品99在线观看 | 在线观看国产麻豆 | 久久黄色小说 | 精品字幕 | 欧美精品久久久久久久久免 | 日韩av中文字幕在线 | 国内精品免费 | 成人免费观看视频网站 | 不卡视频国产 | 在线观看国产成人av片 | 午夜精品久久久久久久久久久久久久 | 日韩亚洲在线 | 日日夜夜干 | 日韩中文在线观看 | 国产香蕉97碰碰久久人人 | 天天躁天天躁天天躁婷 | 最新久久久 | 精品一区二区在线免费观看 | 最新中文字幕在线观看视频 | 国产在线观看你懂的 | 日韩视频在线观看免费 | 99精品国产99久久久久久97 | 免费成人在线电影 | 日本公妇色中文字幕 | 国产精品免费在线播放 | 欧美三级在线播放 | 99热这里只有精品在线观看 | 91精品国产麻豆国产自产影视 | 在线观看av的网站 | 国产美女主播精品一区二区三区 | 五月天丁香亚洲 | 色欧美日韩 | 成年性视频 | 一区精品久久 | 亚洲dvd| 日韩免费中文字幕 | 久久久久久久免费观看 | 色综合久久五月天 | 国产一区国产二区在线观看 | 久久99精品国产99久久6尤 | 2019久久精品 | 玖草在线观看 | 在线观看黄色av | 国产精品午夜在线观看 | 免费在线观看黄网站 | 国产黄在线播放 | 探花国产在线 | 青青看片 | 亚洲乱码精品久久久久 | 日韩三级视频在线观看 | 欧美91精品久久久久国产性生爱 | 国产精品一区二区三区99 | 999久久国产| 午夜视频免费 | 国产午夜精品在线 | 日韩在线观看的 | 国产亚洲精品日韩在线tv黄 | 久久久在线 | 99精品久久久久久久 | 激情五月看片 | 99久久99视频只有精品 | 亚洲精品在线观看av | 黄色免费网站下载 | 国产小视频在线看 | 欧美日韩精品电影 | 91av原创| 日韩中文字幕亚洲一区二区va在线 | 18做爰免费视频网站 | 亚洲国产精品久久久久久 | 91精品久久久久久综合乱菊 | 婷婷深爱激情 | 黄色三级免费观看 | 国产一区二区三精品久久久无广告 | 国产一区高清在线观看 | 久久乱码卡一卡2卡三卡四 五月婷婷久 | 美女啪啪图片 | 激情五月婷婷激情 | 国产精品高清免费在线观看 | 国产精品免费观看国产网曝瓜 | 国产涩图| 亚洲精品乱码久久久久久蜜桃91 | 婷婷五月在线视频 | 久久久www成人免费精品张筱雨 | 国产精品99久久久久久小说 | 成人免费xxx在线观看 | 国产综合在线观看视频 | 99精彩视频在线观看免费 | 国产免费久久久久 | 在线视频久久 | 99精品免费在线观看 | 久久99国产精品久久99 | 日韩中文字幕国产 | 天天色天天干天天 | 五月开心激情网 | 中文字幕在线观看一区二区三区 | 亚洲天天在线 | 97人人添人澡人人爽超碰动图 | 国内外成人免费在线视频 | 黄色特级毛片 | 亚洲欧美日韩国产一区二区三区 | 婷婷在线观看视频 | 97超碰人人澡 | 天天干一干 | 久久精品久久精品 | 成人一区二区三区中文字幕 | 亚洲欧美精品一区 | 日韩av免费一区 | 国产精品午夜免费福利视频 | 亚洲人xxx | 2022中文字幕在线观看 | 国产精品专区在线 | 97超碰国产精品女人人人爽 | 日日综合 | 天天爱天天射天天干天天 | 在线观看av免费观看 | 久草在线视频国产 | 亚洲一区久久 | 久草在线免费在线观看 | 欧美在线观看视频一区二区 | 日韩午夜网站 | 国产精品综合在线观看 | 亚洲电影第一页av | 91福利小视频 | 99国产精品免费网站 | 成人精品久久 | 黄在线免费看 | 黄污视频大全 | 在线观看色视频 | 波多野结衣一区 | 麻豆91网站 | 懂色av懂色av粉嫩av分享吧 | 日本精品中文字幕在线观看 | 日韩在线| 亚洲,国产成人av | 成人小视频在线观看免费 | 久久婷婷一区 | 天天操天天干天天 | 国产精品露脸在线 | 亚洲国产精品推荐 | 伊人久久精品久久亚洲一区 | 国产一二三四在线观看视频 | 少妇18xxxx性xxxx片 | 91手机视频在线 | 五月天婷婷免费视频 | 高清不卡免费视频 | 欧美少妇的秘密 | 色六月婷婷 | 色国产视频| 欧美影片 | 成人免费看视频 | 日本中文字幕电影在线免费观看 | 婷婷伊人五月天 | 免费人成网ww44kk44 | 欧美一区二区三区在线 | 国产伦理久久 | 欧美日韩视频在线观看一区二区 | 99视频精品全国免费 | 亚洲一区二区三区在线看 | 黄色一级大片在线观看 | 99久久这里只有精品 | 日本h在线播放 | 成人av中文字幕在线观看 | 国产精品999久久久 久产久精国产品 | 一区二区免费不卡在线 | 久久久久免费视频 | 久久狠狠亚洲综合 | av线上看| 在线观看亚洲精品 | 日日日日| 精品国产免费av | 在线观看亚洲 | 中文字幕免费观看视频 | 中国黄色一级大片 | 九色在线视频 | 草久草久 | av亚洲产国偷v产偷v自拍小说 | 日韩久久精品一区二区三区下载 | www.com久久 | 狠狠ri| 欧美日韩亚洲第一页 | 久久久久久久久久久电影 | 亚洲婷婷网 | 98久9在线 | 免费 | 公开超碰在线 | 亚洲一级电影在线观看 | 成人av网址大全 | 韩日电影在线观看 | 九九精品久久 | 日韩视频一二三区 | 人人插超碰 | 99亚洲视频| 一区二区精品在线观看 | 999在线精品| 欧洲精品视频一区 | 久久中文字幕在线视频 | 中文字幕高清有码 | 欧美日韩视频在线播放 | 精品国产成人av在线免 | 99久久精品久久久久久动态片 | 日本久久中文 | 日韩高清一区二区 | www.eeuss影院av撸 | 日韩色视频在线观看 | 超碰在线91| 欧洲精品码一区二区三区免费看 | 激情欧美一区二区三区 | 久久免费视频99 | 久久精品视频国产 | 超碰在线人人爱 | 九月婷婷人人澡人人添人人爽 | 91片黄在线观看 | 亚洲乱码精品久久久久 | 久久超级碰 | 久草视频在线看 | 精品视频免费 | 国产成人一区二区三区久久精品 | 久久伊人色综合 | 国产精品久久久久久久久久久不卡 | 91精品国产一区二区三区 | 97成人超碰| 国产裸体永久免费视频网站 | 亚洲成av人片在线观看无 | 五月天视频网站 | 国产高清视频在线观看 | 亚洲免费专区 | 亚洲国产中文字幕在线 | 精品久久久久久久久久久久久久久久 | 久久精品2| 97在线视频免费观看 | 天天在线视频色 | 国产精品原创av片国产免费 | 久久久精品国产一区二区三区 | 一二三区av| 久久99久国产精品黄毛片入口 | 99精品黄色片免费大全 | 狠狠色丁香婷婷综合橹88 | 综合色站导航 | 日韩欧美国产精品 | 成人免费观看网址 | 亚洲精品在线观看的 | 亚洲精品久久久蜜臀下载官网 | 极品嫩模被强到高潮呻吟91 | 国产精品2019 | a v在线观看 | 久久99国产精品免费 | 亚洲伦理电影在线 | 亚洲 精品在线视频 | 国产精品久久久久久吹潮天美传媒 | 精品亚洲视频在线 | 日韩手机在线 | 国产涩涩网站 | 亚洲免费在线观看视频 | 黄色软件在线观看免费 | 伊人婷婷色 | 日日操天天操狠狠操 | 国产91九色蝌蚪 | 久久精品亚洲 | 色老板在线视频 | 香蕉成人在线视频 | 欧美日韩国产精品一区二区三区 | 91黄色在线视频 | 一区二区三区四区精品视频 | 欧美久久久久久久久久 | 99精品国产在热久久下载 | 成年人免费在线观看网站 | 超碰97公开 | 亚洲一区二区麻豆 | 99爱这里只有精品 | 欧美一级在线看 | 久久成年人| 久草在线视频首页 | 国产一二三区在线观看 | 在线精品在线 | 夜夜视频资源 | 中文字幕在线观看日本 | 成人午夜电影免费在线观看 | 久久资源在线 | 亚洲视频综合 | 午夜精品av在线 | 日韩羞羞 | 久久激情综合网 | 精品国模一区二区 | 九色porny真实丨国产18 | 中文字幕在线观看第一页 | 久久短视频 | 国产成人亚洲在线观看 | 久久天天操 | 日韩高清免费在线观看 | 久久久久免费精品国产小说色大师 | 欧美伦理一区二区三区 | 中文在线a∨在线 | 在线a人片免费观看视频 | 久久久蜜桃 | 四虎5151久久欧美毛片 | 特级a老妇做爰全过程 | 欧美在线视频一区二区三区 | 日韩区在线观看 | 日韩激情视频 | 国产.精品.日韩.另类.中文.在线.播放 | 久久99国产精品久久 | 国产成人一二片 | 嫩草av影院| 在线看小早川怜子av | 人人射人人澡 | 国产精品激情在线观看 | 黄色毛片网站在线观看 | 亚洲综合欧美日韩狠狠色 | 日韩欧美网址 | 香蕉免费 | 亚洲天堂毛片 | 91传媒91久久久 | 91精品国产综合久久福利不卡 | 一级黄色片在线观看 | 在线免费观看国产黄色 | 狠狠色丁香婷婷综合久小说久 | 99r在线观看 | 91视频免费播放 | 国产精品麻豆视频 | 2023亚洲精品国偷拍自产在线 | 欧美激情视频一区二区三区免费 | 久久国产网 | 在线黄色av电影 | 91九色网站 | 色婷婷狠狠操 | 在线观看激情av | 国产成人在线观看 | 国产成人精品一区在线 | 国产又粗又硬又爽视频 | 欧美精彩视频在线观看 | 西西4444www大胆视频 | 最新av免费在线观看 | 97人人添人澡人人爽超碰动图 | 午夜视频在线观看一区二区三区 | 亚洲精品乱码久久久久久蜜桃动漫 | 国产一级二级三级视频 | 久操综合| 久久高清免费观看 | av电影在线免费 | 午夜久久电影网 | 香蕉视频在线免费看 | 久久99精品久久久久久秒播蜜臀 | 免费影视大全推荐 | 日韩久久久久久久久久 | 精品国产欧美一区二区 | www黄色 | 超碰在线9 | 天天射网站 | 久久精品成人欧美大片古装 | 免费看的黄网站软件 | 亚洲深爱激情 | 97超碰资源网 | 日韩欧美一区视频 | 韩国av免费观看 | 91人人爱 | 激情网站五月天 | 黄色毛片视频免费观看中文 | 亚洲黄在线观看 | 五月婷婷伊人网 | 日日夜夜网 | 亚洲国产精品久久久 | 成人av免费在线观看 | 国产欧美在线一区 | 久久深爱网 | 99精品福利 | 免费一级特黄录像 | 国产免费人成xvideos视频 | 九九免费在线观看视频 | 九九九九热精品免费视频点播观看 | 91在线看视频 | 久久首页| 成人免费一区二区三区在线观看 | 日本h在线播放 | 欧美九九九 | 国产精品美女视频 | 亚洲日韩精品欧美一区二区 | 亚洲视频一区二区三区在线观看 | 久草影视在线观看 | 久久综合久久鬼 | 狠狠干.com | 久久国产精品免费一区二区三区 | 国产拍揄自揄精品视频麻豆 | 精品久久久久久久久久久久 | 欧美91在线| 欧美天天综合 | 成人久久免费 | 免费av高清 | 日韩国产欧美在线视频 | 福利区在线观看 | 国产区第一页 | 亚洲高清网站 | 免费在线激情视频 | 欧美日韩国产精品一区 | 欧美成年网站 | 欧美在线视频免费 | 91麻豆操 | 色天天 | 九色视频网站 | 波多野结衣在线视频一区 | 91污视频在线 | 国产永久免费 | 一区二区中文字幕在线观看 | 久久69精品 | 亚洲丝袜一区 | 日本在线成人 | 国产精品久久久久婷婷二区次 | 久久久久国产视频 | 99色在线视频 | 高清不卡免费视频 | 国产中文字幕国产 | 国产涩图| 啪啪av在线 | 国产高清av免费在线观看 | 波多在线视频 | 色综合久久天天 | 亚洲欧洲视频 | 激情婷婷| 91污在线观看 | 成人免费观看视频大全 | 日本精品xxxx | 91黄视频在线 | 亚洲精品视频在线观看免费视频 | 日韩激情中文字幕 | 中文免费 | 在线免费观看黄网站 | 久久再线视频 | 成人啪啪18免费游戏链接 | 91麻豆精品国产91 | 国产一级在线看 | 六月激情| 天天综合网天天 | 日本h在线播放 | 97超碰色 | 久久久久久国产精品美女 | 一区精品在线 | 69视频在线播放 | 日韩精品一区二区三区免费观看 | 97色在线视频 | 国产日韩精品在线 | 91在线你懂的 | 天天干天天干天天干 | 天天操天天吃 | 国产精品网址在线观看 | 久久久亚洲精品 | 97超碰色| 色视频在线 | 麻豆91在线 | 成人一区二区在线观看 | 国产精品刺激对白麻豆99 | 亚洲欧美精品一区 | 91在线精品视频 | 婷婷精品国产一区二区三区日韩 | 看片一区二区三区 | 黄色一级动作片 | 91精品中文字幕 | 色婷婷成人网 | 色狠狠狠 | 国产中文字幕一区二区 | 久久在线免费观看视频 | 午夜影院一级片 | 久久久久久草 | 亚洲一区二区高潮无套美女 | 五月天久久久 | 日日躁夜夜躁xxxxaaaa | 97色婷婷成人综合在线观看 | 在线99热 | 久久精品9 | 国产一区二区影院 | 中文在线www| 久久9视频 | 亚洲视频 一区 | 欧美极品xxxx| 免费在线观看毛片网站 | 久久精品免费观看 | 欧美另类成人 | 青草视频在线免费 | 九九九九九九精品任你躁 | 麻豆精品在线 | 日本资源中文字幕在线 | 亚洲精品视频第一页 | 蜜臀av性久久久久蜜臀aⅴ涩爱 | 99国内精品久久久久久久 | 日韩av免费在线电影 | 一区电影| 天天操天天添 | 在线黄色国产 | 午夜三级大片 | 中文字幕在线播放日韩 | 99久久精品免费视频 | 三级免费黄色 | 日韩精品免费一区二区在线观看 | 夜又临在线观看 | 日韩伦理片一区二区三区 | 久久精品国产免费观看 | 免费高清在线一区 | 亚洲最新av在线网站 | 久久久久久久久久网站 | av片免费播放 | 亚洲做受高潮欧美裸体 | 久久久福利视频 | 国产高清亚洲 | 久久免费的视频 | 欧美日韩在线观看一区二区 | 日本久久91| 久久精品电影 | 国产va精品免费观看 | 日韩中文在线字幕 | 天天操夜夜操国产精品 | 伊人亚洲综合 | 九九久久精品视频 | 国产一二三精品 | 天天综合网在线观看 | 久久美女精品 | 9999毛片| 欧美日韩精品国产 | 久精品视频在线 | 日本精品中文字幕在线观看 | 久久久成人精品 | 精品久久久免费视频 | 五月婷婷中文字幕 | 精品成人a区在线观看 | 免费成人在线观看 | 中文字幕资源在线 | 成人国产精品免费观看 | 去干成人网 | 97免费视频在线播放 | 国产日韩欧美视频在线观看 | 天天弄天天干 | 精品国偷自产国产一区 | 一级精品视频在线观看宜春院 | 日韩欧美视频 | 色射爱| 久久久免费电影 | 精品亚洲二区 | 激情丁香综合五月 | 最新国产中文字幕 | 色之综合网 | 国产91全国探花系列在线播放 | 婷婷成人在线 | 亚洲天天摸日日摸天天欢 | 伊人看片 | 日韩黄色免费 | 国产精品久久久久久久久久久久午夜 | 不卡av电影在线观看 | 久久精品国产精品亚洲精品 | 午夜视频在线观看一区二区 | 888av| 一区二区成人国产精品 | 日本中文字幕在线看 | 中文在线www | 91字幕| 亚洲精区二区三区四区麻豆 | 国产成人在线看 | 中文字幕在线字幕中文 | 一区二三国产 | 九九精品久久久 | 五月婷婷操 | www.国产视频 | 一区二区三区不卡在线 | 99精品电影 | 亚州av免费 | 国产在线a不卡 | 国产精品久久久久四虎 | 久久久久亚洲精品中文字幕 | 99精品国产在热久久 | 久久大视频 | 日本mv大片欧洲mv大片 | 97影视| 天天做日日做天天爽视频免费 | 亚洲精品免费在线视频 | 日日夜夜精品 | 久久免费在线观看 | 天天操天天干天天摸 | www黄色 | 久久久免费观看完整版 | 婷婷精品在线视频 | av日韩精品| 欧美综合在线视频 | 日韩在线视频线视频免费网站 | 成人av网站在线观看 | 69亚洲视频 | 九九精品久久久 | 国产精品永久免费视频 | 久久亚洲精品电影 | 午夜国产福利视频 | 亚洲爱视频 | 18性欧美xxxⅹ性满足 | 岛国av在线免费 | 69性欧美| 国产日产精品一区二区三区四区的观看方式 | 日本bbbb摸bbbb| 九九有精品 | 狂野欧美激情性xxxx欧美 | 久久久国产精品人人片99精片欧美一 | 亚洲国产欧美一区二区三区丁香婷 | 成人午夜剧场在线观看 | 亚洲精品国产拍在线 | 久久99亚洲精品久久久久 | 欧美日韩网址 | 在线观看av网 | www一起操| 激情视频一区二区三区 | 久久亚洲成人网 | 天堂激情网 | 欧美一级片免费在线观看 | 三级黄色在线观看 | 国产人成一区二区三区影院 | 美女网站视频久久 | 日韩欧美在线一区 | 黄色一及电影 | 久久在线观看视频 | 婷婷在线视频 | 日韩免费二区 | 91成人精品视频 | 91av在线播放视频 | 深爱激情久久 | 碰超在线97人人 | 国产精品久免费的黄网站 | 国产色视频一区二区三区qq号 | 激情视频一区二区三区 | 嫩草伊人久久精品少妇av | 黄色三级在线观看 | 亚洲国产午夜精品 | 99视频在线观看一区三区 | 久久久国产精品网站 | 久久99国产一区二区三区 | 亚洲免费色 | 亚洲成年片 | 国产精品视频全国免费观看 | 亚洲免费永久精品国产 | 国产91国语对白在线 | 国产r级在线观看 | 欧美日韩一级视频 | 天天干一干 | 久久久久国产精品免费网站 | 亚洲精品午夜视频 | 国产精品一区二区三区久久 | 麻豆传媒在线免费看 | 一区二区三区四区在线免费观看 | 在线观看麻豆av | 成人va视频| 一区二区丝袜 | 国产福利91精品张津瑜 | 天天综合日日夜夜 | 四虎国产永久在线精品 | 久久www免费人成看片高清 | 丁香婷婷色综合亚洲电影 | 九九九热精品 | 亚洲 欧洲 国产 日本 综合 | 在线观看日韩中文字幕 | 最新av在线播放 | 天天躁日日躁狠狠躁av中文 | 久久色在线播放 | 日韩欧美成人网 | 视频二区| 麻豆综合网 | 91试看| 天天干夜夜爱 | 综合久久精品 | 91大神dom调教在线观看 | 久久久精品小视频 | 亚洲精品国产精品乱码在线观看 | 丁香电影小说免费视频观看 | 亚洲va韩国va欧美va精四季 | 亚洲午夜电影网 | 午夜精品一二三区 | 久久综合一本 | 永久免费的av电影 | 日本精品视频网站 | 麻豆精品国产传媒 | 精品久久久久久久久久 | 国产成人一区二区在线观看 | 在线a人v观看视频 | 人人看人人艹 | www麻豆视频| 黄色成人在线网站 | 亚洲激情小视频 | 色综合久久中文字幕综合网 | 在线网站黄 | 中文字幕一区在线 | 久久久激情视频 | 午夜成人免费电影 | 久久99精品久久久久久清纯直播 | 一级欧美黄 | 日韩大片在线免费观看 | 欧美国产日韩一区二区三区 | 日韩视频三区 | 日本动漫做毛片一区二区 | av在线播放观看 | 青青河边草免费观看 | 亚洲一区二区三区在线看 | 亚洲伊人网在线观看 | 久草精品视频在线看网站免费 | 97超碰总站 | 久久久国产影院 | 欧美一二三区在线播放 | av在线色 | 久久久精品一区二区 | 免费高清在线一区 | 国产亚洲人成网站在线观看 | 国产日本三级 | 黄色大全免费观看 | www.久草视频| 亚洲黄色免费在线看 | 久久视频免费在线 | 亚洲天天在线日亚洲洲精 | 欧美小视频在线观看 | 黄色a大片 | 亚洲欧洲中文日韩久久av乱码 | 日本最新一区二区三区 | 久久精品99视频 | 久久精品精品电影网 | 亚洲国产成人高清精品 | 久久视频国产精品免费视频在线 | 欧美中文字幕久久 | 久久精品96 | www色综合 | 男女视频91 | 99视屏 | 欧美99精品| 超碰97中文 | 天天操天操 | 伊人天堂网 | 97久久久免费福利网址 | 久久精品麻豆 | 日本在线视频一区二区三区 | 最近2019年日本中文免费字幕 | 国产亚洲激情视频在线 | 成 人 黄 色 免费播放 | 免费观看完整版无人区 | 久草网视频在线观看 | 亚洲国内在线 | 天天综合网~永久入口 | 免费色网站| 欧美成人按摩 | 久草视频在线资源 | 色婷婷国产精品 | 三级免费黄 | 欧美日韩大片在线观看 | 精品一区电影 | 丁香婷婷激情国产高清秒播 | 久久久久国产免费免费 | 欧美精品一区二区三区四区在线 | 在线免费观看黄色大片 | 国产一区二区免费在线观看 | 在线观看精品黄av片免费 | 国产又黄又硬又爽 | 97色狠狠 | 中文字幕成人av | 久草五月 | 国产理论一区二区三区 | 久久国精品 | 久久视频国产精品免费视频在线 | 日韩精品久久久久 | 国产视频一区在线播放 | 国产一区二区久久精品 | 黄色国产区 | 色噜噜日韩精品一区二区三区视频 | 久久久精品电影 | a天堂最新版中文在线地址 久久99久久精品国产 | 日韩免费在线观看 | 久久超级碰 | 蜜臀久久99精品久久久酒店新书 | 精品1区2区 | 久草免费福利在线观看 | 狠狠色婷婷丁香六月 | 91专区在线观看 | 久久超碰免费 | 福利视频区 | 狠狠色丁香婷婷综合久小说久 | 婷婷开心久久网 | 国产精品视频资源 | 久av在线| 色网站黄| 久久国内精品 | 久久艹精品 | 久久国产露脸精品国产 | 亚洲婷久久 | 精品二区视频 | 日本精品小视频 | 国产中文字幕一区二区 | 欧美日韩aaaa | 99热精品久久 | 国产成人精品福利 | 午夜精品麻豆 | 超碰精品在线 | 麻豆成人在线观看 | 亚洲精品免费在线观看视频 | 欧美最爽乱淫视频播放 | 国产精品专区在线观看 | 97在线观看免费观看高清 | av中文资源在线 | 午夜性盈盈 | 字幕网在线观看 | av看片在线观看 | www欧美日韩| 久久久久看片 | 久久视频精品 | 国产精品久久久久久久久搜平片 | 久久人人97超碰com | 久久久久久久久久久免费 | 亚洲一区二区三区在线看 | av中文字幕在线观看网站 | 免费观看完整版无人区 | 国内精品亚洲 | 91香蕉久久 | 又湿又紧又大又爽a视频国产 | 国产午夜精品在线 | 特级毛片爽www免费版 | 黄色片视频免费 | 免费看片网站91 | free,性欧美 九九交易行官网 | 五月花丁香婷婷 | 福利二区视频 | 欧美日韩一区二区在线观看 | 国产成人久久av免费高清密臂 | 日日躁你夜夜躁你av蜜 | 91久久电影 | 亚洲激精日韩激精欧美精品 | 91精选在线观看 | 国产成人精品午夜在线播放 | 狠狠艹夜夜干 | 免费精品国产va自在自线 | 97超碰伊人 | 在线观看久草 | 99视频99 | 99久久精品免费看国产免费软件 | 在线观看国产一区二区 | 久久精品99视频 | 在线观看韩国av | 久久久久久久久久久久久久免费看 | av在线短片 | 激情五月六月婷婷 | 日韩精品免费专区 | 国产精品电影一区二区 | 在线观看的av| 久久蜜臀一区二区三区av | 欧美乱大交 | 九九热在线精品 | 国产精品成久久久久 | 狠狠操在线 | 亚洲另类视频在线 | 四虎在线免费视频 |