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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

乐优商城项目搭建

發布時間:2023/12/10 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 乐优商城项目搭建 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.了解電商行業

學習電商項目,自然要先了解這個行業,所以我們首先來聊聊電商行業

1.1.項目分類

主要從需求方、盈利模式、技術側重點這三個方面來看它們的不同

1.1.1.傳統項目

各種企業里面用的管理系統(ERP、HR、OA、CRM、物流管理系統。。。。。。。)

  • 需求方:公司、企業內部
  • 盈利模式:項目本身賣錢
  • 技術側重點:業務功能

1.1.2.互聯網項目

門戶網站、電商網站:baidu.com、qq.com、taobao.com、jd.com …

  • 需求方:廣大用戶群體
  • 盈利模式:虛擬幣、增值服務、廣告收益…
  • 技術側重點:網站性能、業務功能

而我們今天要聊的就是互聯網項目中的重要角色:電商

1.2.電商行業的發展

1.2.1.錢景

近年來,中國的電子商務快速發展,交易額連創新高,電子商務在各領域的應用不斷拓展和深化、相關服務業蓬勃發展、支撐體系不斷健全完善、創新的動力和能力不斷增強。電子商務正在與實體經濟深度融合,進入規模性發展階段,對經濟社會生活的影響不斷增大,正成為我國經濟發展的新引擎。

中國電子商務研究中心數據顯示,截止到 2012 年底,中國電子商務市場交易規模達 7.85萬億人民幣,同比增長 30.83%。其中,B2B 電子商務交易額達 6.25 萬億,同比增長 27%。而 2011 年全年,中國電子商務市場交易額達 6 萬億人民幣,同比增長 33%,占 GDP 比重上升到 13%;2012 年,電子商務占 GDP 的比重已經高達 15%。

1.2.2.數據

來看看雙十一的成交數據:

2016雙11開場30分鐘,創造每秒交易峰值17.5萬筆每秒支付峰值12萬筆的新紀錄。菜鳥單日物流訂單量超過4.67億,創歷史新高。

1.2.3.技術特點

從上面的數據我們不僅要看到錢,更要看到背后的技術實力。正是得益于電商行業的高強度并發壓力,促使了BAT等巨頭們的技術進步。電商行業有些什么特點呢?

  • 技術范圍廣
  • 技術新
  • 高并發(分布式、靜態化技術、緩存技術、異步并發、池化、隊列)
  • 高可用(集群、負載均衡、限流、降級、熔斷)
  • 數據量大
  • 業務復雜
  • 數據安全

1.3.常見電商模式

電商行業的一些常見模式:

  • B2C:商家對個人,如:亞馬遜、當當等
  • C2C平臺:個人對個人,如:閑魚、拍拍網、ebay
  • B2B平臺:商家對商家,如:阿里巴巴、八方資源網等
  • O2O:線上和線下結合,如:餓了么、電影票、團購等
  • P2P:在線金融,貸款,如:網貸之家、人人聚財等。
  • B2C平臺:天貓、京東、一號店等

1.4.一些專業術語

  • SaaS:軟件即服務

  • SOA:面向服務

  • RPC:遠程過程調用

  • RMI:遠程方法調用

  • PV:(page view),即頁面瀏覽量;

    用戶每1次對網站中的每個網頁訪問均被記錄1次。用戶對同一頁面的多次訪問,訪問量累計

  • UV:(unique visitor),獨立訪客

    指訪問某個站點或點擊某條新聞的不同IP地址的人數。在同一天內,uv只記錄第一次進入網站的具有獨立IP的訪問者,在同一天內再次訪問該網站則不計數。

  • PV與帶寬:

    • 計算帶寬大小需要關注兩個指標:峰值流量和頁面的平均大小。
    • 計算公式是:網站帶寬= ( PV * 平均頁面大小(單位MB)* 8 )/統計時間(換算到秒)
    • 為什么要乘以8?
      • 網站大小為單位是字節(Byte),而計算帶寬的單位是bit,1Byte=8bit
    • 這個計算的是平均帶寬,高峰期還需要擴大一定倍數
  • PV、QPS、并發

    • QPS:每秒處理的請求數量。

      • 比如你的程序處理一個請求平均需要0.1S,那么1秒就可以處理10個請求。QPS自然就是10,多線程情況下,這個數字可能就會有所增加。
    • 由PV和QPS如何需要部署的服務器數量?

      • 根據二八原則,80%的請求集中在20%的時間來計算峰值壓力:
      • (每日PV * 80%) / (3600s * 24 * 20%) * 每個頁面的請求數 = 每個頁面每秒的請求數量
      • 然后除以服務器的QPS值,即可計算得出需要部署的服務器數量

1.5.項目開發流程

項目經理:管人

技術經理:

產品經理:設計需求原型

測試:

前端:大前端:UI 前端頁面。

后端:

移動端:

項目開發流程圖:

公司現狀:

2.樂優商城介紹

2.1.項目介紹

  • 樂優商城是一個全品類的電商購物網站(B2C)。
  • 用戶可以在線購買商品、加入購物車、下單
  • 可以評論已購買商品
  • 管理員可以在后臺管理商品的上下架、促銷活動
  • 管理員可以監控商品銷售狀況
  • 客服可以在后臺處理退款操作
  • 希望未來3到5年可以支持千萬用戶的使用

2.2.系統架構

2.2.1.架構圖

樂優商城架構縮略圖,大圖請參考課前資料:

2.2.2.系統架構解讀

整個樂優商城可以分為兩部分:后臺管理系統、前臺門戶系統。

  • 后臺管理:

    • 后臺系統主要包含以下功能:
      • 商品管理,包括商品分類、品牌、商品規格等信息的管理
      • 銷售管理,包括訂單統計、訂單退款處理、促銷活動生成等
      • 用戶管理,包括用戶控制、凍結、解鎖等
      • 權限管理,整個網站的權限控制,采用JWT鑒權方案,對用戶及API進行權限控制
      • 統計,各種數據的統計分析展示
    • 后臺系統會采用前后端分離開發,而且整個后臺管理系統會使用Vue.js框架搭建出單頁應用(SPA)。
  • 前臺門戶

    • 前臺門戶面向的是客戶,包含與客戶交互的一切功能。例如:
      • 搜索商品
      • 加入購物車
      • 下單
      • 評價商品等等
    • 前臺系統我們會使用Thymeleaf模板引擎技術來完成頁面開發。出于SEO優化的考慮,我們將不采用單頁應用。

無論是前臺還是后臺系統,都共享相同的微服務集群,包括:

  • 商品微服務:商品及商品分類、品牌、庫存等的服務
  • 搜索微服務:實現搜索功能
  • 訂單微服務:實現訂單相關
  • 購物車微服務:實現購物車相關功能
  • 用戶中心:用戶的登錄注冊等功能
  • Eureka注冊中心
  • Zuul網關服務

3.項目搭建

3.1.技術選型

前端技術:

  • 基礎的HTML、CSS、JavaScript(基于ES6標準)
  • JQuery
  • Vue.js 2.0以及基于Vue的框架:Vuetify(UI框架)
  • 前端構建工具:WebPack
  • 前端安裝包工具:NPM
  • Vue腳手架:Vue-cli
  • Vue路由:vue-router
  • ajax框架:axios
  • 基于Vue的富文本框架:quill-editor

后端技術:

  • 基礎的SpringMVC、Spring 5.x和MyBatis3
  • Spring Boot 2.0.7版本
  • Spring Cloud 最新版 Finchley.SR2
  • Redis-4.0
  • RabbitMQ-3.4
  • Elasticsearch-6.3
  • nginx-1.14.2
  • FastDFS - 5.0.8
  • MyCat
  • Thymeleaf
  • mysql 5.6

3.2.開發環境

為了保證開發環境的統一,希望每個人都按照我的環境來配置:

  • IDE:我們使用Idea 2017.3 版本
  • JDK:統一使用JDK1.8
  • 項目構建:maven3.3.9以上版本即可(3.5.2)
  • 版本控制工具:git

idea大家可以在我的課前資料中找到。另外,使用幫助大家可以參考課前資料的《idea使用指南.md》

3.3.域名

我們在開發的過程中,為了保證以后的生產、測試環境統一。盡量都采用域名來訪問項目。

一級域名:www.leyou.com,leyou.com leyou.cn

二級域名:manage.leyou.com/item , api.leyou.com

我們可以通過switchhost工具來修改自己的host對應的地址,只要把這些域名指向127.0.0.1,那么跟你用localhost的效果是完全一樣的。

switchhost可以去課前資料尋找。

3.4.創建父工程

創建統一的父工程:leyou,用來管理依賴及其版本,注意是創建project,而不是module

填寫項目信息:

填寫保存的位置信息:

然后將pom文件修改成我這個樣子:

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.leyou.parent</groupId><artifactId>leyou</artifactId><version>1.0.0-SNAPSHOT</version><packaging>pom</packaging><name>leyou</name><description>Demo project for Spring Boot</description><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.0.7.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>1.8</java.version><spring-cloud.version>Finchley.SR2</spring-cloud.version><mybatis.starter.version>1.3.2</mybatis.starter.version><mapper.starter.version>2.0.2</mapper.starter.version><druid.starter.version>1.1.9</druid.starter.version><mysql.version>5.1.32</mysql.version><pageHelper.starter.version>1.2.3</pageHelper.starter.version><leyou.latest.version>1.0.0-SNAPSHOT</leyou.latest.version><fastDFS.client.version>1.26.1-RELEASE</fastDFS.client.version></properties><dependencyManagement><dependencies><!-- springCloud --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope></dependency><!-- mybatis啟動器 --><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>${mybatis.starter.version}</version></dependency><!-- 通用Mapper啟動器 --><dependency><groupId>tk.mybatis</groupId><artifactId>mapper-spring-boot-starter</artifactId><version>${mapper.starter.version}</version></dependency><!-- 分頁助手啟動器 --><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>${pageHelper.starter.version}</version></dependency><!-- mysql驅動 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql.version}</version></dependency><!--FastDFS客戶端--><dependency><groupId>com.github.tobato</groupId><artifactId>fastdfs-client</artifactId><version>${fastDFS.client.version}</version></dependency></dependencies></dependencyManagement><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build> </project>

可以發現,我們在父工程中引入了SpringCloud等,很多以后需要用到的依賴,以后創建的子工程就不需要自己引入了。

可以刪除src目錄,工程結構如下:

3.5.創建EurekaServer

3.5.1.創建工程

我們的注冊中心,起名為:leyou-registry

選擇新建module:

不要選擇骨架:

然后填寫項目坐標,我們的項目名稱為leyou-registry:

選擇安裝目錄,因為是聚合項目,目錄應該是在父工程leyou的下面:

3.5.2.添加依賴

添加EurekaServer的依賴:

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><parent><artifactId>leyou</artifactId><groupId>com.leyou.parent</groupId><version>1.0.0-SNAPSHOT</version></parent><modelVersion>4.0.0</modelVersion><groupId>com.leyou.common</groupId><artifactId>leyou-registry</artifactId><version>1.0.0-SNAPSHOT</version><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifactId></dependency></dependencies> </project>

3.5.3.編寫啟動類

@SpringBootApplication @EnableEurekaServer public class LeyouRegistryApplication {public static void main(String[] args) {SpringApplication.run(LeyouRegistryApplication.class, args);} }

3.5.4.配置文件

server:port: 10086 spring:application:name: leyou-registry eureka:client:service-url:defaultZone: http://127.0.0.1:${server.port}/eurekaregister-with-eureka: false # 把自己注冊到eureka服務列表fetch-registry: false # 拉取eureka服務信息server:enable-self-preservation: false # 關閉自我保護eviction-interval-timer-in-ms: 5000 # 每隔5秒鐘,進行一次服務列表的清理

3.5.5.項目的結構

目前,整個項目的結構如圖:

3.6.創建Zuul網關

3.6.1.創建工程

與上面類似,選擇maven方式創建Module,然后填寫項目名稱,我們命名為:leyou-gateway

填寫保存的目錄:

3.6.2.添加依賴

這里我們需要添加Zuul和EurekaClient的依賴:

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><parent><artifactId>leyou</artifactId><groupId>com.leyou.parent</groupId><version>1.0.0-SNAPSHOT</version></parent><modelVersion>4.0.0</modelVersion><groupId>com.leyou.common</groupId><artifactId>leyou-gateway</artifactId><version>1.0.0-SNAPSHOT</version><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-zuul</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId></dependency><!-- springboot提供微服務檢測接口,默認對外提供幾個接口 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency></dependencies> </project>

3.6.3.編寫啟動類

@SpringBootApplication @EnableDiscoveryClient @EnableZuulProxy public class LeyouGatewayApplication {public static void main(String[] args) {SpringApplication.run(LeyouGatewayApplication.class, args);} }

3.6.4.配置文件

server:port: 10010 spring:application:name: api-gateway eureka:client:service-url:defaultZone: http://127.0.0.1:10086/eureka zuul:prefix: /api #添加路由前綴 hystrix:command:default:execution:isolation:thread:timeoutInMilliseconds: 5000 #熔斷超時時長 ribbon:ConnectTimeout: 1000 #ribbon鏈接超時時長ReadTimeout: 3500 #ribbon讀取超時時長MaxAutoRetries: 0 #當前服務重試次數MaxAutoRetriesNextServer: 0 #切換服務重試次數

3.6.5.項目結構

目前,leyou下有兩個子模塊:

  • leyou-registry:服務的注冊中心(EurekaServer)
  • leyou-gateway:服務網關(Zuul)

目前,服務的結構如圖所示:

截止到這里,我們已經把基礎服務搭建完畢,為了便于開發,統一配置中心(ConfigServer)我們留待以后添加。

3.7.創建商品微服務

既然是一個全品類的電商購物平臺,那么核心自然就是商品。因此我們要搭建的第一個服務,就是商品微服務。其中會包含對于商品相關的一系列內容的管理,包括:

  • 商品分類管理
  • 品牌管理
  • 商品規格參數管理
  • 商品管理
  • 庫存管理

3.7.1.微服務的結構

因為與商品的品類相關,我們的工程命名為leyou-item.

需要注意的是,我們的leyou-item是一個微服務,那么將來肯定會有其它系統需要來調用服務中提供的接口,獲取的接口數據,也需要對應的實體類來封裝,因此肯定也會使用到接口中關聯的實體類。

因此這里我們需要使用聚合工程,將要提供的接口及相關實體類放到獨立子工程中,以后別人引用的時候,只需要知道坐標即可。

我們會在leyou-item中創建兩個子工程:

  • leyou-item-interface:主要是對外暴露的接口及相關實體類
  • leyou-item-service:所有業務邏輯及內部使用接口

調用關系如圖所示:

3.7.2.leyou-item

依然是使用maven構建:

保存的位置:

因為是聚合工程,所以把項目打包方式設置為pom

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><parent><artifactId>leyou</artifactId><groupId>com.leyou.parent</groupId><version>1.0.0-SNAPSHOT</version></parent><modelVersion>4.0.0</modelVersion><groupId>com.leyou.item</groupId><artifactId>leyou-item</artifactId><version>1.0.0-SNAPSHOT</version><!-- 打包方式為pom --><packaging>pom</packaging></project>

3.7.3.leyou-item-interface

在leyou-item工程上點擊右鍵,選擇new --> module:

依然是使用maven構建,注意父工程是leyou-item:

注意:目錄結構,保存到leyou-item下的leyou-item-interface目錄中:

點擊Finish完成。

此時的項目結構:

3.7.4.leyou-item-service

與leyou-item-interface類似,我們選擇在leyou-item上右鍵,新建module,然后填寫項目信息:

填寫存儲位置

點擊Finish完成。

3.7.5.整個微服務結構

如圖所示:

我們打開leyou-item的pom查看,會發現leyou-item-interface和leyou-item-service都已經成為module了:

可以刪除leyou-item工程的src目錄

3.7.6.添加依賴

接下來我們給leyou-item-service中添加依賴:

思考一下我們需要什么?

  • Eureka客戶端
  • web啟動器
  • mybatis啟動器
  • 通用mapper啟動器
  • 分頁助手啟動器
  • 連接池,我們用默認的Hykira
  • mysql驅動
  • 千萬不能忘了,我們自己也需要ly-item-interface中的實體類

這些依賴,我們在頂級父工程:leyou中已經添加好了。所以直接引入即可:

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><parent><artifactId>leyou-item</artifactId><groupId>com.leyou.item</groupId><version>1.0.0-SNAPSHOT</version></parent><modelVersion>4.0.0</modelVersion><groupId>com.leyou.item</groupId><artifactId>leyou-item-service</artifactId><version>1.0.0-SNAPSHOT</version><dependencies><!-- web啟動器 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- eureka客戶端 --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-client</artifactId></dependency><!-- mybatis的啟動器 --><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId></dependency><!-- 通用mapper啟動器 --><dependency><groupId>tk.mybatis</groupId><artifactId>mapper-spring-boot-starter</artifactId></dependency><!-- 分頁助手啟動器 --><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId></dependency><!-- jdbc啟動器 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId></dependency><!-- mysql驅動 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><dependency><groupId>com.leyou.item</groupId><artifactId>leyou-item-interface</artifactId><version>1.0.0-SNAPSHOT</version></dependency><!-- springboot檢測服務啟動器 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency></dependencies></project>

leyou-item-interface中需要什么我們暫時不清楚,所以先不管。以后需要什么依賴,再引入。

3.7.7.編寫啟動和配置

在整個leyou-item工程中,只有leyou-item-service是需要啟動的。因此在其中編寫啟動類即可:

@SpringBootApplication @EnableDiscoveryClient public class LeyouItemServiceApplication {public static void main(String[] args) {SpringApplication.run(LeyouItemServiceApplication.class, args);} }

然后是全局屬性文件:

server:port: 8081 spring:application:name: item-servicedatasource:url: jdbc:mysql://localhost:3306/leyouusername: rootpassword: roothikari:max-lifetime: 28830000 # 一個連接的生命時長(毫秒),超時而且沒被使用則被釋放(retired),缺省:30分鐘,建議設置比數據庫超時時長少30秒,參考MySQL wait_timeout參數(show variables like '%timeout%';)maximum-pool-size: 9 # 連接池中允許的最大連接數。缺省值:10;推薦的公式:((core_count * 2) + effective_spindle_count) eureka:client:service-url:defaultZone: http://127.0.0.1:10086/eurekainstance:prefer-ip-address: trueip-address: 127.0.0.1lease-renewal-interval-in-seconds: 5 # 5秒鐘發送一次心跳lease-expiration-duration-in-seconds: 10 # 10秒不發送就過期

3.8.添加商品微服務的路由規則

既然商品微服務已經創建,接下來肯定要添加路由規則到Zuul中,我們不使用默認的路由規則。

修改leyou-gateway工程的application.yml配置文件:

zuul:prefix: /api # 路由路徑前綴routes:item-service: /item/** # 商品微服務的映射路徑

3.9.啟動測試

我們分別啟動:leyou-registry,leyou-gateway,leyou-item-service

查看Eureka面板:

3.10.測試路由規則

為了測試路由規則是否暢通,我們是不是需要在item-service中編寫一個controller接口呢?

其實不需要,SpringBoot提供了一個依賴:actuator

只要我們添加了actuator的依賴,它就會為我們生成一系列的訪問接口:

  • /info
  • /health
  • /refresh

添加依賴:

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId> </dependency>

重啟后訪問Eureka控制臺:

鼠標懸停在item-service上,會顯示一個地址:

這就是actuator提供的接口,我們點擊訪問:

因為我們沒有添加信息,所以是一個空的json,但是可以肯定的是:我們能夠訪問到item-service了。

接下來我們通過路由訪問試試,根據路由規則,我們需要訪問的地址是:

http://127.0.0.1:10010/api/item/actuator/info

3.11.通用工具模塊

有些工具或通用的約定內容,我們希望各個服務共享,因此需要創建一個工具模塊:leyou-common

右鍵leyou工程,使用maven來構建module:

位置信息:

結構:

目前還不需要編碼。

4.ES6語法指南

后端項目搭建完畢,接下來就是前端頁面了。不過在這之前需要一些準備工作。我們需要學習ES6的語法標準。

什么是ES6?就是ECMAScript第6版標準。

4.1.什么是ECMAScript?

來看下前端的發展歷程:

web1.0時代:

  • 最初的網頁以HTML為主,是純靜態的網頁。網頁是只讀的,信息流只能從服務的到客戶端單向流通。開發人員也只關心頁面的樣式和內容即可。

web2.0時代:

  • 1995年,網景工程師Brendan Eich 花了10天時間設計了JavaScript語言。
  • 1996年,微軟發布了JScript,其實是JavaScript的逆向工程實現。
  • 1997年,為了統一各種不同script腳本語言,ECMA(歐洲計算機制造商協會)以JavaScript為基礎,制定了ECMAscript標準規范。JavaScript和JScript都是ECMAScript的標準實現者,隨后各大瀏覽器廠商紛紛實現了ECMAScript標準。

所以,ECMAScript是瀏覽器腳本語言的規范,而各種我們熟知的js語言,如JavaScript則是規范的具體實現。

4.2.ECMAScript的快速發展

而后,ECMAScript就進入了快速發展期。

  • 1998年6月,ECMAScript 2.0 發布。

  • 1999年12月,ECMAScript 3.0 發布。這時,ECMAScript 規范本身也相對比較完善和穩定了,但是接下來的事情,就比較悲劇了。

  • 2007年10月。。。。ECMAScript 4.0 草案發布。

    這次的新規范,歷時頗久,規范的新內容也有了很多爭議。在制定ES4的時候,是分成了兩個工作組同時工作的。

    • 一邊是以 Adobe, Mozilla, Opera 和 Google為主的 ECMAScript 4.0 工作組。
    • 一邊是以 Microsoft 和 Yahoo 為主的 ECMAScript 3.1 工作組。

    ECMAScript 4 的很多主張比較激進,改動較大。而 ECMAScript 3.1 則主張小幅更新。最終經過 TC39 的會議,決定將一部分不那么激進的改動保留發布為 ECMAScript 3.1,而ES4的內容,則延續到了后來的ECMAScript5和6版本中

  • 2009年12月,ECMAScript 5 發布。

  • 2011年6月,ECMAScript 5.1 發布。

  • 2015年6月,ECMAScript 6,也就是 ECMAScript 2015 發布了。 并且從 ECMAScript 6 開始,開始采用年號來做版本。即 ECMAScript 2015,就是ECMAScript6。 它的目標,是使得 JavaScript 語言可以用來編寫復雜的大型應用程序,成為企業級開發語言。

4.3.ES5和6的一些新特性

我們這里只把一些常用的進行學習,更詳細的大家參考:阮一峰的ES6教程

創建一個空的html頁面:

<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>Document</title> </head> <script></script> <body></body> </html>

4.3.1.let 和 const 命令

var

之前,js定義變量只有一個關鍵字:var

var有一個問題,就是定義的變量有時會莫名奇妙的成為全局變量。

例如這樣的一段代碼:

for(var i = 0; i < 5; i++){console.log(i); } console.log("循環外:" + i)

你猜下打印的結果是什么?

let

let所聲明的變量,只在let命令所在的代碼塊內有效。

我們把剛才的var改成let試試:

for(let i = 0; i < 5; i++){console.log(i); } console.log("循環外:" + i)

結果:

const

const聲明的變量是常量,不能被修改

4.3.2.字符串擴展

新的API

ES6為字符串擴展了幾個新的API:

  • includes():返回布爾值,表示是否找到了參數字符串。
  • startsWith():返回布爾值,表示參數字符串是否在原字符串的頭部。
  • endsWith():返回布爾值,表示參數字符串是否在原字符串的尾部。

實驗一下:

字符串模板

ES6中提供了`來作為字符串模板標記。我們可以這么玩:

在兩個`之間的部分都會被作為字符串的值,不管你任意換行,甚至加入js腳本

4.3.3.解構表達式

數組解構

比如有一個數組:

let arr = [1,2,3]

我想獲取其中的值,只能通過角標。ES6可以這樣:

const [x,y,z] = arr;// x,y,z將與arr中的每個位置對應來取值 // 然后打印 console.log(x,y,z);

結果:

對象解構

例如有個person對象:

const person = {name:"jack",age:21,language: ['java','js','css'] }

我們可以這么做:

// 解構表達式獲取值 const {name,age,language} = person; // 打印 console.log(name); console.log(age); console.log(language);

結果:

如過想要用其它變量接收,需要額外指定別名:

{name:n}:name是person中的屬性名,冒號后面的n是解構后要賦值給的變量。

4.3.4.函數優化

函數參數默認值

在ES6以前,我們無法給一個函數參數設置默認值,只能采用變通寫法:

function add(a , b) {// 判斷b是否為空,為空就給默認值1b = b || 1;return a + b;}// 傳一個參數console.log(add(10));

現在可以這么寫:

function add(a , b = 1) {return a + b; } // 傳一個參數 console.log(add(10));

箭頭函數

ES6中定義函數的簡寫方式:

一個參數時:

var print = function (obj) {console.log(obj); } // 簡寫為: var print2 = obj => console.log(obj);

多個參數:

// 兩個參數的情況: var sum = function (a , b) {return a + b; } // 簡寫為: var sum2 = (a,b) => a+b;

代碼不止一行,可以用{}括起來

var sum3 = (a,b) => {return a + b; }

對象的函數屬性簡寫

比如一個Person對象,里面有eat方法:

let person = {name: "jack",// 以前:eat: function (food) {console.log(this.name + "在吃" + food);},// 箭頭函數版:eat2: food => console.log(person.name + "在吃" + food),// 這里拿不到this// 簡寫版:eat3(food){console.log(this.name + "在吃" + food);} }

箭頭函數結合解構表達式

比如有一個函數:

const person = {name:"jack",age:21,language: ['java','js','css'] }function hello(person) {console.log("hello," + person.name) }

如果用箭頭函數和解構表達式

var hi = ({name}) => console.log("hello," + name);

4.3.5.map和reduce

數組中新增了map和reduce方法。

map

map():接收一個函數,將原數組中的所有元素用這個函數處理后放入新數組返回。

舉例:有一個字符串數組,我們希望轉為int數組

let arr = ['1','20','-5','3']; console.log(arr)arr = arr.map(s => parseInt(s)); console.log(arr)

reduce

reduce():接收一個函數(必須)和一個初始值(可選)。

第一個參數(函數)接收兩個參數:

  • 第一個參數是上一次reduce處理的結果
  • 第二個參數是數組中要處理的下一個元素

reduce()會從左到右依次把數組中的元素用reduce處理,并把處理的結果作為下次reduce的第一個參數。如果是第一次,會把前兩個元素作為計算參數,或者把用戶指定的初始值作為起始參數

舉例:

const arr = [1,20,-5,3]

沒有初始值:

指定初始值:

4.3.6.對象擴展

ES6給Object拓展了許多新的方法,如:

  • keys(obj):獲取對象的所有key形成的數組
  • values(obj):獲取對象的所有value形成的數組
  • entries(obj):獲取對象的所有key和value形成的二維數組。格式:[[k1,v1],[k2,v2],...]
  • assign(dest, …src) :將多個src對象的值 拷貝到 dest中(淺拷貝)。

4.3.7.數組擴展

ES6給數組新增了許多方法:

  • find(callback):數組實例的find方法,用于找出第一個符合條件的數組成員。它的參數是一個回調函數,所有數組成員依次執行該回調函數,直到找出第一個返回值為true的成員,然后返回該成員。如果沒有符合條件的成員,則返回undefined。
  • findIndex(callback):數組實例的findIndex方法的用法與find方法非常類似,返回第一個符合條件的數組成員的位置,如果所有成員都不符合條件,則返回-1。
  • includes(數組元素):與find類似,如果匹配到元素,則返回true,代表找到了。

總結

以上是生活随笔為你收集整理的乐优商城项目搭建的全部內容,希望文章能夠幫你解決所遇到的問題。

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

中文字幕超清在线免费 | 国产黑丝一区二区三区 | 国产裸体无遮挡 | 香蕉网在线 | 男女视频久久久 | 成人夜晚看av | 国产亚洲亚洲 | 日韩a免费| 久草在线观看 | 国产涩涩网站 | 日韩免| 91精品国产一区二区在线观看 | 成人午夜电影网 | 国产美女精品人人做人人爽 | 欧美在线观看视频一区二区 | 亚洲精品在线视频网站 | 91成人免费在线视频 | 欧美特一级| 日韩在线视频网 | 激情视频一区二区 | 黄色电影在线免费观看 | 美女国产网站 | 欧美精品乱码久久久久 | 国产精品久久一区二区无卡 | 国产精品色婷婷视频 | 日韩欧美视频一区二区三区 | 精品国产伦一区二区三区免费 | 中文字幕超清在线免费 | 国内毛片毛片 | 成人毛片在线观看视频 | 狠狠干 狠狠操 | 日韩在线视频观看 | 天天干天天想 | 久久国内精品99久久6app | 男女激情免费网站 | 999成人 | 97视频在线观看视频免费视频 | 免费福利片2019潦草影视午夜 | 国产精品21区 | 四虎国产精品免费观看视频优播 | 99免费在线播放99久久免费 | 婷婷丁香在线视频 | 丝袜少妇在线 | av中文天堂 | 国产精品五月天 | 婷婷网站天天婷婷网站 | 成年人免费在线播放 | 久草www| 国产最新视频在线观看 | 99视频精品 | 天天草天天插 | 国产精品视频app | 亚洲精品乱码久久久一二三 | 久草视频资源 | 日韩在线网址 | 国产性xxxx | 一级精品视频在线观看宜春院 | 欧美成人h版 | 在线观看成人福利 | 欧美日韩国产在线观看 | 精品久久网站 | 在线免费av观看 | 日日摸日日添夜夜爽97 | 正在播放亚洲精品 | 国产成人精品午夜在线播放 | 久久精品2 | 国产黄色免费在线观看 | 亚洲国产影院av久久久久 | 天天做天天爽 | 99免费精品 | 久久热首页| 国产精品久久一卡二卡 | 91免费的视频在线播放 | 久久久99精品免费观看乱色 | 国产日本在线观看 | 四虎影视国产精品免费久久 | 日韩精品电影在线播放 | 欧美精品一区二区蜜臀亚洲 | 日本中文字幕观看 | 91精品一区在线观看 | 在线观看黄色国产 | www.久久91| 欧美精品xxx | 99久久99视频只有精品 | 欧美日韩高清不卡 | 国产美女精品 | 91av电影在线 | 久久人人爽人人片 | 色婷婷免费| 国产精品久久久久亚洲影视 | 狠狠狠的干 | 又黄又爽又湿又无遮挡的在线视频 | 久久人人精品 | 五月婷激情 | 欧美激情精品久久久久 | 亚洲精品免费在线视频 | 九九九热精品免费视频观看网站 | 丁香视频全集免费观看 | 亚洲综合色av | 国产麻豆电影 | 激情五月婷婷 | 国产精品亚洲综合久久 | 黄色一级大片在线免费看产 | 一本一本久久a久久精品综合妖精 | 国产原创在线 | 成年人免费看 | 91精品视频免费看 | 午夜视频亚洲 | av免费黄色 | 国产精品成人自拍 | 免费a一级| 亚洲精品一区二区三区在线观看 | 中文字幕在线观看网 | av中文字幕免费在线观看 | aaa日本高清在线播放免费观看 | 亚洲精品视频在线看 | 久久伊人色综合 | 日韩一区精品 | 99热九九这里只有精品10 | 99国产免费网址 | 美女免费视频网站 | 日韩av看片| 中文字幕日韩一区二区三区不卡 | 日韩精选在线 | 一二三区高清 | 日韩高清激情 | 色偷偷av男人天堂 | 亚洲精品色视频 | 欧美日韩一二三四区 | 国产91在线看 | 极品中文字幕 | 久久99精品国产麻豆婷婷 | 国产在线观看,日本 | 五月婷婷毛片 | 国产精品美女久久 | 91麻豆精品国产自产在线 | 中文字幕文字幕一区二区 | 一区 二区电影免费在线观看 | 韩日成人av| 天天色天天搞 | 五月婷婷欧美 | 免费观看国产视频 | 中文字幕不卡在线88 | 亚洲综合色视频在线观看 | 国产精品 中文在线 | 国产精品一区一区三区 | av高清在线 | 天天玩天天操天天射 | 久久国产福利 | 91av视频播放 | 亚洲激情网站免费观看 | 久久字幕精品一区 | 久久艹国产视频 | 一区二区中文字幕在线播放 | 国产亚洲精品久久久久久久久久 | 国产超碰在线 | 国产精品美女www爽爽爽视频 | 天天操天天拍 | 欧美人交a欧美精品 | 天天躁日日躁狠狠 | 久久久视频在线 | 国产69精品久久99不卡的观看体验 | 国产成人一区二区啪在线观看 | 又黄又刺激的视频 | 欧美吞精 | 欧美日韩中文字幕综合视频 | 国内久久视频 | 天天爱天天插 | 99久久夜色精品国产亚洲96 | 亚洲 欧洲 国产 精品 | 男女精品久久 | 91亚洲精品久久久蜜桃借种 | 久久精品免视看 | 国产精品一区二区久久精品 | 丁香一区二区 | 久热免费在线 | 欧美精品久久久久久久久久 | 在线观看日韩一区 | 欧洲视频一区 | 免费三级影片 | 欧美日韩视频在线观看免费 | 视频一区二区免费 | 久久久毛片 | 天天射天天射天天 | 在线视频 影院 | 91精品啪在线观看国产线免费 | 麻豆高清免费国产一区 | 精品国产乱码久久久久久1区二区 | 欧美久久久久 | 香蕉视频啪啪 | 亚洲国产大片 | 久久五月婷婷丁香社区 | 深爱开心激情网 | 久久久国产精品一区二区三区 | 久久免费公开视频 | 精品在线一区二区三区 | 亚洲一区二区三区毛片 | 精品国产一区二区三区蜜臀 | 久热av在线 | 国产精品一区二区中文字幕 | 国产精品黑丝在线观看 | 视频1区2区 | 日韩欧美99 | 久久99欧美| 日日夜夜免费精品视频 | 久久视频一区二区 | 精品久久精品久久 | 日韩视频在线播放 | 亚洲特级毛片 | 91传媒在线看 | 免费久草视频 | 黄色大片国产 | 精品国产伦一区二区三区观看说明 | 一区二区三区在线免费观看视频 | 91精品久久久久久 | 成人av影视观看 | 久久午夜鲁丝片 | 亚洲国产精品一区二区尤物区 | 久久精品小视频 | 97超碰人人看| 久久综合久久综合久久综合 | 9999精品视频 | 91.dizhi永久地址最新 | 99精品免费在线观看 | 四虎欧美| 天天操人人要 | 国产精品麻豆99久久久久久 | 91视频这里只有精品 | 久久免费a | 国产精品一区二区三区观看 | 久久久私人影院 | 最新av免费 | 久久ww| 婷婷伊人网 | 亚洲免费av观看 | 国内精品久久久久久久久久清纯 | 国产免费叼嘿网站免费 | 狠狠干2018 | 欧美人zozo | 最近免费观看的电影完整版 | 国产精品欧美精品 | 国产网红在线观看 | 国产综合久久 | 午夜精品久久久久久久久久 | 精品一区二区三区电影 | 国产999 | 亚洲精品www | 日韩成人免费在线观看 | 国产午夜麻豆影院在线观看 | 一区二区三区动漫 | 精品一区二区三区电影 | 91久久久久久久一区二区 | 久久久精品影视 | 天天色天天色 | 韩国av一区二区 | 免费污片 | 久草青青在线观看 | 色婷婷久久一区二区 | 欧美91片| 激情小说 五月 | 日韩xxxbbb | 综合在线亚洲 | 国产成人亚洲在线电影 | 久久99精品久久久久久三级 | 九九热免费视频在线观看 | 国产一区二区精品91 | 婷婷精品国产欧美精品亚洲人人爽 | 成人毛片一区 | 婷婷久月| 国产亚洲精品久久久久动 | 中文字幕av一区二区三区四区 | 正在播放日韩 | 在线亚洲欧美视频 | 四虎成人精品永久免费av | 日韩精品2区 | 欧美性脚交 | 日韩欧美xxxx | 91大神精品视频在线观看 | 亚洲综合五月天 | 99热日本 | 性色xxxxhd | www.av免费观看 | 欧美精品久久 | 91久久精品一区二区三区 | 国产精品 国内视频 | 五月天久久久久 | 天天天天天干 | 国产精品午夜久久 | 99精品视频99 | 四虎在线免费视频 | 午夜电影 电影 | 久久久精品高清 | 久久九九精品 | 狠狠干干 | 超薄丝袜一二三区 | 中文字幕一区在线 | 欧美调教网站 | 五月色婷 | 不卡av免费在线观看 | 国产一区二区高清 | 国产成人在线免费观看 | 黄色一级大片在线免费看国产一 | 成人国产精品久久久久久亚洲 | 四虎影视www| 天堂成人在线 | 色婷婷在线视频 | 黄色成人小视频 | 天天激情综合 | 中文字幕美女免费在线 | 午夜久久视频 | 亚洲 中文 欧美 日韩vr 在线 | 国产日韩精品在线观看 | 亚洲免费不卡 | 精品一区二区免费视频 | 高清免费在线视频 | 欧美一区二区在线免费观看 | 久久在线精品 | 免费在线观看成人av | 91大神精品视频 | 99视频在线观看视频 | 国精产品一二三线999 | 国产一区二区在线影院 | 国内丰满少妇猛烈精品播 | 97国产大学生情侣白嫩酒店 | 久久精品日本啪啪涩涩 | 91久久国产综合精品女同国语 | 日韩av手机在线观看 | 精品综合久久 | 免费看色视频 | 免费观看一级特黄欧美大片 | 精品国产一区二区三区四区在线观看 | 精品国产乱码久久久久久浪潮 | 精品中文字幕在线 | 中文字幕第一页在线播放 | 九九交易行官网 | 国产视频每日更新 | 亚洲少妇久久 | 欧美99精品 | 一区二区三区免费网站 | 国产精品资源 | 国产高清免费 | 久久精品99精品国产香蕉 | 91成版人在线观看入口 | 日av免费 | 香蕉视频网站在线观看 | 国产精品久久三 | 欧洲精品在线视频 | 中文字幕亚洲高清 | 成人福利在线观看 | 91精品国产高清自在线观看 | 日韩欧美一区二区三区黑寡妇 | 在线免费av观看 | av在线短片| 天天综合网国产 | 欧美日韩在线免费观看 | 国产原创av在线 | 国产高清专区 | 精品国产乱码久久久久久浪潮 | 久久精品一区 | 在线观看亚洲视频 | 在线a人片免费观看视频 | 精品久久久久久久久久国产 | 国产人成在线观看 | 69视频永久免费观看 | 久久久久国产a免费观看rela | 日本在线观看一区二区 | 国产精品免费在线播放 | 色综合天天做天天爱 | 中文字幕观看视频 | 国产精品一区二区av日韩在线 | 91亚洲精品久久久蜜桃借种 | 亚洲人成人在线 | www.天天综合 | 中文亚洲欧美日韩 | 狠狠狠狠狠色综合 | 色91在线视频 | 天天五月天色 | 国产成人精品一区二 | 精品一区二三区 | 午夜在线免费观看视频 | 在线看v片成人 | 日韩精品一区二区久久 | 精品国产一区二区三区免费 | 中文字幕在线观看第三页 | 国产特级毛片aaaaaaa高清 | 亚洲天天摸日日摸天天欢 | 夜夜躁日日躁狠狠久久88av | 夜夜躁狠狠躁 | 欧美孕妇与黑人孕交 | 中文字幕 国产 一区 | 色综合久久悠悠 | 国产不卡视频在线 | 色资源中文字幕 | 国产一级不卡视频 | 岛国精品一区二区 | 99色资源| 日韩有码在线观看视频 | 欧美成人手机版 | 国产精品你懂的在线观看 | 福利视频| www.com操 | 欧美视频在线观看免费网址 | 亚洲最新av在线 | 国产精品白浆 | 日韩最新中文字幕 | 日韩视频图片 | 99精品在线观看 | 特级大胆西西4444www | 国产精品igao视频网入口 | 国产成人精品一区二区三区福利 | 国产综合精品一区二区三区 | 99爱在线观看 | 日韩一区二区三区高清免费看看 | 91一区二区三区久久久久国产乱 | 国产成人久久av | 国产高清视频 | 日韩中文字幕免费在线观看 | 中文字幕黄色网址 | 在线观看中文字幕 | 亚洲精品中文在线 | 中文字幕在线人 | 色5月婷婷 | 99久热在线精品视频成人一区 | 精品国产一区二区三区久久影院 | 国产女教师精品久久av | 国产精品毛片一区二区三区 | 91免费视频网站在线观看 | 日韩黄色在线电影 | 黄a在线看| 亚洲高清视频在线观看免费 | 右手影院亚洲欧美 | 伊人宗合网 | 久久综合精品国产一区二区三区 | 久草在线这里只有精品 | 欧美性生活一级片 | 欧美日韩国语 | 日韩欧美精品在线视频 | 高清精品久久 | 精品中文字幕视频 | 一区二区三区在线影院 | 亚洲午夜激情网 | 国产中文在线字幕 | 精品av网站 | 超碰人在线| 色综合久久综合 | 国产精品9999 | 九九热视频在线免费观看 | 黄色国产成人 | 国产精品久久久久久久7电影 | 天天综合在线观看 | 久青草视频在线观看 | 视频国产区 | 日韩免费观看高清 | 天天艹 | 日本黄色大片免费看 | 精品国产aⅴ麻豆 | 五月天.com | 国内精品久久久久影院优 | 亚洲乱码精品 | 欧美伦理一区二区三区 | 精品亚洲免费视频 | 欧美激情视频一二区 | 国产午夜精品福利视频 | 狠狠色噜噜狠狠狠合久 | 国产夫妻性生活自拍 | 亚洲视频每日更新 | 日韩精品在线一区 | 久久精品网站免费观看 | 久久久精品99 | 美女免费视频观看网站 | 国产免费成人av | 在线观看精品一区 | 日本91在线 | 免费久久99精品国产婷婷六月 | 在线精品在线 | 亚洲aⅴ一区二区三区 | 日韩va在线观看 | a黄色一级| 精品在线观看视频 | 日韩午夜剧场 | 亚洲视频免费在线 | 国产精品久久久久影院 | 在线 国产 亚洲 欧美 | 亚洲另类视频 | 精品高清视频 | 去干成人网 | 天天操天天色综合 | 欧美a级成人淫片免费看 | 久久久久久久久久久国产精品 | 狠狠色伊人亚洲综合网站色 | 狠狠干天天 | 看av免费网站 | 国内精品久久天天躁人人爽 | 黄色免费网站 | 国内久久精品 | 国产69久久精品成人看 | 99精品久久久久久久 | 午夜色场 | 午夜精品福利一区二区 | 成人毛片久久 | 久久精品国产精品亚洲 | 五月婷亚洲 | 一区二区三区在线视频111 | 一本到视频在线观看 | 久久久久北条麻妃免费看 | 麻豆 videos| 国产精品一二 | 99热这里只有精品免费 | 国产一二三四在线观看视频 | www狠狠| 久久综合狠狠综合久久综合88 | 中文字幕在线精品 | 国产经典三级 | 欧美在线观看视频 | 激情五月婷婷综合 | 日批视频在线 | av一级片在线观看 | 国产精品美女久久 | 一区二区三区 中文字幕 | 91欧美日韩国产 | 精品毛片在线 | av福利在线 | 日韩mv欧美mv国产精品 | 美女免费视频网站 | 玖玖在线资源 | 麻花豆传媒mv在线观看网站 | 久久精品视频在线观看免费 | 婷婷丁香激情 | 在线看黄色av| 久久久久国产精品免费 | 五月天久久激情 | 国产精品久久久久久久久久了 | 亚洲一级理论片 | 日日夜夜操操 | 久久在线影院 | 欧美男女爱爱视频 | 国产精品久久久久久久久费观看 | 久久国产精品久久久 | 精品你懂的 | 亚洲国产中文字幕 | 亚洲专区在线播放 | 久久久麻豆 | 国产精品久久久久aaaa九色 | 日日操天天操夜夜操 | 成人av片免费看 | 日韩精品首页 | 免费黄色a网站 | 高清精品在线 | 亚洲片在线观看 | 一区二区三区不卡在线 | 国产手机视频在线播放 | 久久激情影院 | 国产69久久精品成人看 | 亚洲精品456在线播放乱码 | 欧美伦理电影一区二区 | 成人在线观看资源 | 亚洲综合精品视频 | 久久精品视频5 | 精品美女在线观看 | 天天操网址 | 亚洲不卡av一区二区三区 | 精品国产中文字幕 | 日本爱爱免费 | 亚洲闷骚少妇在线观看网站 | av大片网址| 久久久久久欧美二区电影网 | 国产网红在线观看 | 国产精品va在线观看入 | 欧美一区免费在线观看 | 日本黄色免费电影网站 | 亚洲高清精品在线 | 亚洲国产三级 | 高潮久久久久久 | 国产精品久久久久久影院 | 久草视频在线免费播放 | 在线观看国产中文字幕 | 欧美射射射| 在线a亚洲视频播放在线观看 | 欧美大片在线观看一区 | 久久久亚洲国产精品麻豆综合天堂 | 91丨九色丨蝌蚪丨对白 | 国产精品18p | 在线免费观看欧美日韩 | 久久午夜影视 | 天天操伊人 | 国产欧美高清 | 中文字幕在线免费观看 | 免费在线成人av | 中文字幕第一页在线 | 日韩精品一区二区三区不卡 | 色婷婷88av视频一二三区 | 亚洲精品国产欧美在线观看 | 亚洲激情p | 国产一区二区三区午夜 | 91精品免费在线观看 | 欧美视频网址 | 韩日精品在线 | 国产高清不卡一区二区三区 | 久久综合色综合88 | 精品欧美小视频在线观看 | 亚洲色五月 | 91亚洲精品视频 | 国产精品欧美日韩 | 亚洲精品国产成人av在线 | 99久久精品久久久久久动态片 | 69国产成人综合久久精品欧美 | 国产精品一区在线播放 | 亚洲精品乱码久久久久久久久久 | 激情开心网站 | 91av九色| 狠狠干夜夜操 | 国产成人av网站 | 国产色视频一区二区三区qq号 | 色综合久久99 | 久久综合九色九九 | 97在线看片 | 99视频在线免费看 | av成人免费在线 | 精品国产伦一区二区三区免费 | 99re久久精品国产 | 午夜av免费 | 成人影音在线 | 国产精品久久久久久久久久久久午夜片 | 精品在线不卡 | 久久激情小说 | 在线观看中文字幕视频 | 97超碰人人澡 | 欧美片网站yy | 国产免费一区二区三区网站免费 | 欧美日韩精品影院 | 六月激情 | 九九免费视频 | 国产精品白浆视频 | 日韩黄色大片在线观看 | 久久99亚洲精品 | 国产精品久久久久久久久久久久午 | 日韩精品久久久 | 91精品国产综合久久福利不卡 | 天天干天天干天天色 | 超碰.com| 日韩中文字幕亚洲一区二区va在线 | 99精品一区二区 | 日韩av电影免费观看 | 天天射天天射天天 | 久久成人久久 | 中文字幕国语官网在线视频 | 国产99久久九九精品 | 天天干,狠狠干 | 亚洲 综合 专区 | 国产99久久精品一区二区永久免费 | 国产亚洲精品久久久久久久久久久久 | 亚洲免费不卡 | 欧美最爽乱淫视频播放 | 日本在线成人 | 91专区在线观看 | 99色99| 人人爱人人射 | 欧美成人在线网站 | 日日夜夜免费精品视频 | 91av在线免费观看 | 国产午夜精品久久 | 一区二区三区电影大全 | 黄色软件视频大全免费下载 | 亚洲精品一区二区三区在线观看 | 久久久久久蜜av免费网站 | 少妇搡bbbb搡bbb搡69 | 欧美另类高清 videos | 国产精品成人免费精品自在线观看 | 色综合久久精品 | 13日本xxxxxⅹxxx20 | 久久这里有精品 | 久久97久久97精品免视看 | 91精品秘密在线观看 | 国产精品第一页在线观看 | 久久五月婷婷丁香社区 | 免费网站看av片 | 日日干夜夜草 | 视频在线99re | 中文字幕日韩无 | wwwav视频 | 免费97视频 | 国产综合视频在线观看 | 在线观看的av | www.99在线观看| 国产一级精品视频 | 国产视频精品免费播放 | 日韩小视频网站 | 波多野结衣电影一区二区三区 | 久草在线观看 | 在线亚洲观看 | 亚洲观看黄色网 | 欧美日韩精品在线观看视频 | 久久久精品日本 | 日日夜夜骑 | 亚洲激情 欧美激情 | www.夜色321.com | 久久精品国产一区 | 国产亚洲va综合人人澡精品 | 免费中文字幕 | 亚洲精品xxxx| 美女视频黄是免费的 | 99高清视频有精品视频 | 免费高清在线视频一区· | 日本最新中文字幕 | av五月婷婷 | 国产视频日韩视频欧美视频 | 免费在线观看污 | 夜夜躁狠狠躁日日躁 | 伊人婷婷色 | 青青河边草观看完整版高清 | 国产午夜三级一二三区 | 久久国产成人午夜av影院宅 | 黄色tv视频 | 大型av综合网站 | 日日夜夜天天久久 | 国产高清免费视频 | 久久精品亚洲精品国产欧美 | 91精品国自产在线观看欧美 | 日韩一二三区不卡 | 成人黄色毛片视频 | 美女精品久久久 | 最近字幕在线观看第一季 | 亚洲高清久久久 | 亚洲精品在线观看的 | 91成人看片| 伊人久久在线观看 | 97精品久久人人爽人人爽 | 国产精品久久久久久久久久久久午夜 | 久草资源在线 | 日韩亚洲在线观看 | 97在线播放视频 | 国产精品a久久 | 亚洲国内在线 | 草久中文字幕 | 亚洲一区在线看 | 亚洲一片黄| 午夜免费视频网站 | 亚洲精品国产精品乱码在线观看 | 亚洲一二三在线 | 夜夜躁日日躁狠狠躁 | 精品影院一区二区久久久 | 91免费网| 欧美一级黄大片 | 国产一级一片免费播放放a 一区二区三区国产欧美 | 免费视频 三区 | 中文字幕中文字幕中文字幕 | 国产一线天在线观看 | 免费看污污视频的网站 | 国内少妇自拍视频一区 | 国产精品高清一区二区三区 | 国产精品第一页在线观看 | 天堂视频一区 | 91精选在线观看 | 欧美精品日韩 | 韩日电影在线 | 精品国产乱码久久久久久1区2匹 | 天堂激情网 | 性色av一区二区三区在线观看 | 日韩性xxxx| 97人人模人人爽人人喊网 | 国产亚洲精品免费 | 国产精品久久久久久久久久久久 | 国产一区二区电影在线观看 | 国产色视频一区二区三区qq号 | 不卡av电影在线观看 | 高清精品视频 | 国产亚洲一区二区在线观看 | 日韩欧美在线高清 | 超碰97在线看 | 久久国产精品视频观看 | 国产一区成人在线 | 超黄视频网站 | 在线观看91精品视频 | av三区在线 | 亚洲精品国产综合99久久夜夜嗨 | 久久av伊人 | 丝袜美腿在线播放 | 亚洲网久久 | 国产成人精品999在线观看 | 五月婷婷操 | 久久精品中文 | 国产精品久久久久久久久久久久久久 | www视频免费在线观看 | 免费av网址大全 | 麻豆视频一区 | 热久久精品在线 | 黄色三级免费观看 | 国产视频久久久久 | 久久久久免费精品视频 | 在线亚洲高清视频 | 国产日韩欧美在线播放 | 国产欧美久久久精品影院 | 国产无套精品久久久久久 | 成人黄色片在线播放 | 国产精久久久久久妇女av | 黄色在线免费观看网站 | 色综合网在线 | 最近最新mv字幕免费观看 | 日韩一区二区三区免费视频 | 国产黄色片免费看 | 成人aⅴ视频 | www.久久色.com| 蜜臀av性久久久久蜜臀aⅴ涩爱 | 99热精品国产一区二区在线观看 | 九九影视理伦片 | 久久婷婷国产 | 麻豆视频免费看 | 激情小说网站亚洲综合网 | 亚洲欧美在线视频免费 | 色妞久久福利网 | 国产成人久久77777精品 | 欧美日韩1区2区 | 毛片黄色一级 | 国产精品1区2区3区在线观看 | 在线精品亚洲一区二区 | 午夜黄网| 丁香婷婷自拍 | 六月丁香激情综合色啪小说 | 日本动漫做毛片一区二区 | 日韩毛片久久久 | 久久精品草| 国产高清日韩欧美 | 色资源在线| 丁香婷婷综合激情五月色 | 欧美激情精品久久 | 五月婷婷在线视频观看 | 九九爱免费视频 | 国产精品久久99精品毛片三a | 日韩理论片在线观看 | 国产日产欧美在线观看 | 久久久99久久 | 99精品在线免费在线观看 | 国产精品成人免费精品自在线观看 | 成人羞羞视频在线观看免费 | 91视频久久| 中文字幕在线观看一区二区三区 | 久热香蕉视频 | 色综合天天 | 特级黄色片免费看 | 500部大龄熟乱视频 欧美日本三级 | 免费电影播放 | 成人久久综合 | 国产精品欧美久久久久三级 | 国产高清在线观看 | 婷婷丁香自拍 | 四虎国产精品免费观看视频优播 | 国产日韩在线观看一区 | 国产成人免费精品 | 在线精品视频在线观看高清 | 亚洲开心色 | 亚洲国产精品va在线看黑人动漫 | 国产精品视频全国免费观看 | 亚洲免费成人av电影 | 国产五月婷 | 日韩av成人在线观看 | 在线观看久草 | 日韩激情网 | 国产精品不卡av | 伊人色综合久久天天网 | 亚洲精区二区三区四区麻豆 | 黄色视屏av| 欧美在线观看视频一区二区三区 | 麻豆免费在线视频 | 国产96精品 | 91色在线观看视频 | 国产一区视频在线 | 视频二区| 日本午夜在线亚洲.国产 | 91激情视频在线观看 | 国产午夜一区 | 日韩精品中文字幕久久臀 | 一区二区视频电影在线观看 | www日韩高清| 91亚洲精品久久久 | 91九色九色 | www.亚洲在线 | 中文字幕999 | 国产二区av | 韩国一区二区av | 免费看三级黄色片 | 91视频观看免费 | 一区 二区电影免费在线观看 | 免费av的网站 | 免费观看黄 | 99久久久久久久久 | 在线观看视频一区二区 | 国产精品美女久久久 | 久久精品一区二区三 | 久久艹国产视频 | 久久手机看片 | 久久综合色影院 | 日韩大片在线免费观看 | 日韩在线短视频 | 日本特黄一级片 | 久草免费手机视频 | 中文字幕乱偷在线 | 91久久人澡人人添人人爽欧美 | 激情五月播播久久久精品 | 国产99亚洲| 欧美了一区在线观看 | 欧美天天干 | 91系列在线观看 | 在线免费观看视频一区二区三区 | 中文字幕第一 | 一区二区三区四区影院 | 日韩一区视频在线 | 亚洲在线看 | 精品欧美乱码久久久久久 | 日本少妇高清做爰视频 | 国产精品不卡在线 | 亚洲h色精品 | 国产免费又爽又刺激在线观看 | 日韩精品无 | 亚洲最新av在线网站 | 久草在线久 | 亚洲成人午夜在线 | 国产一区国产精品 | 91热视频| 免费黄色在线网站 | 四虎影视欧美 | 99精品视频在线观看视频 | 福利视频 | 亚洲欧美视频一区二区三区 | 美女黄网久久 | 日韩欧美在线高清 | 久久久网| 黄色av网站在线免费观看 | 久久久久久网址 | 国际精品久久久 | 婷婷四房综合激情五月 | 色九色| av在线成人 | 国产免费中文字幕 | 日韩欧美视频免费观看 | 91av视频在线播放 | 午夜av激情| v片在线看 | 久草视频在线免费播放 | 成人a免费| 精品一二三四在线 | 日韩二区三区在线 | 久久99精品国产91久久来源 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 日日夜色| 亚洲乱码一区 | 亚洲人成免费 | 欧美日韩a视频 | 欧美午夜精品久久久久 | 久久久久女人精品毛片 | japanesexxxhd奶水 91在线精品一区二区 | 激情丁香 | 日韩在线国产精品 | 免费福利小视频 | 91资源在线视频 | 免费看的毛片 | 国产一区二区在线观看视频 | 日韩在线视频免费播放 | 亚洲综合色站 | www.久久久 | 亚洲最新合集 | 日韩影视在线观看 | 国产精品久久久久久69 | 亚洲综合射 | 玖玖在线看 | 香蕉影视app | av电影在线观看 | 日本激情视频中文字幕 | 久久久免费观看视频 | 色噜噜日韩精品欧美一区二区 | 91麻豆看国产在线紧急地址 | 天天摸天天弄 | 国产亚洲无 | av在线播放网址 | 亚洲高清在线 | va视频在线观看 | 久久涩视频 | 九九久久免费 | 综合网婷婷| 国产精品美女免费视频 | 一区二区三区四区在线免费观看 | 中文字幕av日韩 | 男女靠逼app | 成人a视频片观看免费 | 久久精品韩国 | 国产成人久久77777精品 | 免费黄色一区 | 人人添人人澡人人澡人人人爽 | 精品久久久久久亚洲综合网站 | 天天干,天天草 | 69精品在线观看 | 欧美人交a欧美精品 | 97电影在线看视频 | 96亚洲精品久久 | 亚洲在线看 | a黄色大片| 91麻豆精品国产91久久久久久久久 | 天天爽天天爽夜夜爽 | 99久久这里有精品 |