是一個打包的ES Module的工具;
Rollup 是一個 JavaScript 模塊打包器,可以將小塊代碼編譯成大塊復雜的代碼,例如 library 或應用程序。Rollup 對代碼模塊使用新的標準化格式,這些標準都包含在 JavaScript 的 ES6 版本中,而不是以前的特殊解決方案,如 CommonJS 和 AMD。ES6 模塊可以使你自由、無縫地使用你最喜愛的 library 中那些最有用獨立函數,而你的項目不必攜帶其他未使用的代碼。ES6 模塊最終還是要由瀏覽器原生實現,但當前 Rollup 可以使你提前體驗
Rollup并不支持CommonJS和AMD的打包方式
CommonJS主要用于服務端,一個單獨的文件就是一個模塊,node.js為主要實踐者。
提供支持:
require 命令用于輸入其他模塊提供的功能
module.exports命令用于規范模塊的對外接口,輸出的是一個值的拷貝,輸出之后就不能改變了,會緩存起來。
CommonJS 采用同步加載模塊,而加載的文件資源大多數在本地服務器,所以執行速度或時間沒問題。但是在瀏覽器端,限于網絡原因,更合理的方案是使用異步加載。
采用異步方式加載模塊,模塊的加載不影響它后面語句的運行。所有依賴這個模塊的語句,都定義在一個回調函數中,等到加載完成之后,這個回調函數才會運行。其中 RequireJS 是最佳實踐者。
異步加載模塊
CMD(Common Module Definition - 通用模塊定義)規范主要是Sea.js推廣中形成的,一個文件就是一個模塊,可以像Node.js一般書寫模塊代碼。主要在瀏覽器中運行,當然也可以在Node.js中運行。
它與AMD很類似,不同點在于:AMD 推崇依賴前置、提前執行,CMD推崇依賴就近、延遲執行
UMD 叫做通用模塊定義規范(Universal Module Definition)。也是隨著大前端的趨勢所誕生,它可以通過運行時或者編譯時讓同一個代碼模塊在使用 CommonJs、CMD 甚至是 AMD 的項目中運行。未來同一個 JavaScript 包運行在瀏覽器端、服務區端甚至是 APP 端都只需要遵守同一個寫法就行了。
它沒有自己專有的規范,是集結了 CommonJs、CMD、AMD 的規范于一身,我們看看它的具
簡稱ESM,是 JavaScript 官方的標準化模塊系統。
import { name, github } from './demo.js';
console.log(name(), github());
document.body.innerHTML = `<h1>${name()} ${github()}</h1>`
CommonJS 同步加載, AMD 異步加載, UMD = CommonJS + AMD , ES Module 是標準規范, 取代 UMD,是大勢所趨。 Tree-shaking 牢記副作用。
要包括下面這些:
數據類型、判斷方法、執行上下文、變量對象、活動對象原型、原型鏈作用域、作用域鏈閉包、垃圾回收機制、this指向、類和模塊、繼承、函數式編程、同步異步、JS正則表達式、事件模型、Ajax、跨域訪問、DOM、BOM。
ECMAScript的基本數據類型有5種:Undefined、Null、Boolean、Number、String。
其中Boolean、Number、String屬于原始類型,Undefined、Null屬于原始值。
原始類型代表了各自類型的所有成員,原始值則代表了各自特殊類型的唯一成員。
ECMAScript的復合數據類型有1種:Object(對象類型)。
Object是一種復合值,它將很多值(原始類型/值或者其他對象)聚合在一起,通過屬性的形式進行訪問。
ECMAScript的特殊對象類型:Array、Function、Math、Date、JSON、RegExp、Error,每種類型都各自代表一種獨立的類,不同的類實例擁有不同的類特性以及對應的操作方式。
ECMAScript常見數據類型劃分方式:
1.原始類型、對象類型
2.值類型、引用類型
3.可變類型、不可變類型
4.可擁有方法類型、不可擁有方法類型精確區分數據類型的判斷方法:Object.prototype.toString.call
JS的執行上下文可以理解為當前代碼的執行環境,在執行JS程序時,每遇到一段JS可執行代碼,都會創建一個可執行上下文。JS當中可執行代碼分為三種:全局代碼、函數代碼、eval代碼。所以一段JS程序必定會產生多個執行上下文,而JavaScript引擎則是以堆棧的形式來對其進行管理,也就是常說的函數調用棧。棧底是全局上下文,棧頂則是當前正在執行的上下文。例如:
執行上下文在函數調用棧中的順序為(自底向上):globalStack => threeStack => twoStack => oneStack
特性
1.單線程
2.同步執行,只有棧頂的上下文處于執行中,其他上下文需要等待
3.全局上下文只有唯一的一個,它在瀏覽器關閉時出棧
4.函數的執行上下文的個數沒有限制
5.每次某個函數被調用,就會有個新的執行上下文為其創建,即使是調用的自身函數,也是如此。變量對象、活動對象
在介紹變量對象與活動對象前,首先我們需要更深入的理解執行上下文的生命周期,執行上下文的生命周期分為兩個階段:
第一個階段是創建階段,每當JS引擎在執行一段可執行代碼時,都會先進入創建階段。該階段會分別創建變量對象,建立作用域鏈,以及確定this的指向,作用域鏈和this指向會在后文闡述。所謂變量對象就是用于存儲在執行上下文中定義的變量和函數聲明,在當前上下文中每找到一個變量聲明,就會在變量對象中建立一個同名的屬性,每找到一個函數聲明,就會建立一個以函數名命名的屬性,屬性值則為指向該函數所在內存地址的引用。這些預先建立好的屬性以及屬性值,存儲著該上下文中所有的變量數據,為后續代碼的執行奠定基礎。
第二個階段是執行階段,當變量對象,作用域鏈,this指向都建立之后,執行上下文會進入到執行階段。在該階段中變量對象會轉化為活動對象,此時活動對象中的屬性都允許被訪問,并且可以執行其他數據性的操作。
兩者區別:
執行上下文處于創建階段時,變量對象中的屬性是不允許被訪問的,但是在進入到執行階段后,變量對象轉化為活動對象,并且里面的屬性都允許被外界訪問。其實兩者都屬于同一個對象,只是處于執行上下文的不同生命周期而已。
在JavaScript中,每一個對象都會和另一個對象產生關聯,從另一個對象上繼承屬性,這里所指的另一個對象就是我們耳熟能詳的原型。原型本身也是一個對象,其他對象可以通過它實現屬性的繼承,也可以將任何一個對象作為自身對象的原型。JS中的任何對象都有原型,除了原型鏈頂端的對象:Object.prototype
所謂原型鏈,就是由對象原型所構成的訪問鏈,我稱之為“原型繼承鏈”。一個JS對象的原型指向其父類對象,而父類對象的原型又指向父類對象的父類對象,這種通過原型層層連接起來的關系就是原型鏈。
以下是幾種獲取原型對象的方法:
作用域、作用域鏈
說到作用域,就必須結合變量的訪問權限來說明。一個變量的作用域就是在程序中定義變量的區域,它規定了執行程序如何對變量進行查找,也就是確定當前的執行代碼對變量的訪問權限。在ES5中有全局作用域、函數作用域、eval作用域,在ES6中新增了塊級作用域。
作用域鏈,則需要結合函數的嵌套來說明。當定義一個函數時,它實際上創建了一個作用域節點,該節點上存儲著當前作用域中的局部變量,并且該節點會掛載在作用域鏈的底端。在該函數中嵌套定義另一個函數時,同樣會創建另一個函數作用域的節點,該節點同樣也存儲著當前函數作用域中的局部變量,在作用域鏈中會將該節點掛載在外層函數的節點之下。所以在進行變量訪問時,會從自身節點開始查找,如果未找到變量的對應值,則會繼續查找上一個節點。而由這一系列節點所串聯起來的鏈就是我們所說的作用域鏈。
JavaScript中的函數采用靜態作用域,也稱詞法作用域。當在執行函數調用時,不管何時何地執行函數,其中的變量在函數定義時就已經決定了,函數會從自身作用域節點開始,沿著作用域鏈向上訪問變量的值。
注意:作用域鏈的頂端是全局作用域,作用域鏈在函數定義時就已經創建了。
閉包,又一個老生常談的話題,可以用一句話對之概括:有權訪問另一個函數作用域內變量的函數都是閉包。例如:
這里返回的inner函數就是能夠訪問outer函數中變量的閉包,除inner函數之外的外部作用域都無法訪問outer函數中的變量a。
閉包特性:
1.函數返回嵌套的函數形成閉包
2.閉包內部可以訪問外部的參數和變量
3.外部參數和變量在被閉包引用時不會被垃圾回收機制回收
閉包優點:
1.可避免變量對全局的污染
2.允許函數私有成員的存在
3.允許變量長駐內存
閉包缺點:
由于變量常駐內存,增大內存使用量,使用不當很容易造成內存泄漏。
閉包應用場景:
1.采用函數引用方式的setTimeout調用
2.將函數關聯到對象的實例方法
3.封裝相關的功能集
JS垃圾回收機制原理
JavaScript中的垃圾回收,主要是一種針對程序執行環境中內存的管理機制,該機制最大限度的優化了JS程序對操作系統內存的使用。垃圾回收機制也同樣非常容易理解:就是利用垃圾收集器,周期性的回收那些程序中,不被其他引用所指向的變量的內存資源。不被其他引用所指向的變量就是程序中不會再用到的變量,也就是生命周期結束的變量,這種變量多為局部變量,而全局變量只有在關閉瀏覽器或終止當前運行環境的情況下其生命周期才會結束。所以此時垃圾收集器所要做的就是周期性的檢索程序中處于結束狀態的變量,同時回收他們所占用的內存資源。
而閉包的使用則無疑會增加程序對內存資源的占用,因為在閉包中存儲著對外部變量的引用,所以只要閉包中存儲的外部引用未停止使用,那么外部變量就永遠存在,且其所占用的內存資源無法被垃圾回收機制所釋放。因此合理的使用閉包,能優化程序的執行效率及降低程序的資源占有率。
this的指向問題無疑是JavaScript語言中必須掌握的核心概念。上文提到,在執行上下文創建的階段,就會建立this指向。而更細致的說,this的指向,是在函數被調用的時候確定的。
下面是this指向的四種場景:
1.如果一個函數中有this,但是它沒有以對象方法的形式調用,而是以函數名的形式執行,那么this指向的就是全局對象。
2.如果一個函數中有this,并且這個函數是以對象方法的形式調用,那么this指向的就是調用該方法的對象。
3.如果一個函數中有this,并且包含該函數的對象也同時被另一個對象所包含,盡管這個函數是被最外層的對象所調用,this指向的也只是它上一級的對象。
4.如果一個構造函數或類方法中有this,那么它指向由該構造函數或類創建出來的實例對象。
類的概念
JavaScript是一種弱類型語言,其本身并不像Java等語言那樣對數據具有很強的類型區分,所以為了能夠具有面向對象的編碼風格,以其獨有的方式實現了類的機制。在JavaScript中,類的實現是基于原型(prototype)繼承機制的,如果兩個實例都從同一個原型對象上繼承了屬性,可以說它們是屬于同一個類的實例。類讓每一個成員對象都共享某些屬性,這種屬性共享的方式在編程中占有舉足輕重的地位。
ES5中的類:在ES5中,類是由函數來定義的,定義類的函數稱之為構造函數。一般這類函數會以首字母大寫的形式出現,普通的函數和方法都是以小寫字母開頭,對象實例化時通過new關鍵字來調用構造函數。構造函數上掛載著一個prototype屬性,該屬性存放的是當前類的原型對象,原型對象是類的核心,用于為每一個實例對象提供公有屬性。原型對象中還擁有一個constructor屬性,用于指向當前類的構造函數。構造函數是類的“公共標識”,而原型對象是類的“唯一標識”。以下是一個類,用于表示點的坐標:
ES6中的類:在ES6中,類的表示就更具語義化,寫法上更類似于傳統的面向對象語言。它引入了class關鍵字作為類的標識,并將ES5中prototype的constructor屬性直接作為其內部的構造函數,并且在定義類方法時不需要添加function關鍵字,類方法之間也不需要用逗號進行分隔。類中的靜態方法和靜態屬性用static關鍵字表示,一旦類函數和類屬性用static關鍵字標記后,實例對象將不會繼承這些屬性和方法,只能通過類本身來調用。同樣用ES6中的類來表示上述的例子:
JavaScript模塊化的歷史由來已久,也并非小編用幾行的篇幅就能一語帶過,在這僅對它的特性及應用場景進行籠統的說明,如有對其原委感興趣的讀者,可以搜索其他更詳細的相關資料。
先來說CommonJS,CommonJS模塊化規范主要應用于服務器端編程,加載模塊的方式屬于同步加載,只有在加載完成之后才能執行后續操作。一個.js文件就是一個CommonJS模塊,在服務器端的模塊文件一般都保存在本地硬盤,所以加載速度較快。每一個模塊都有自己的作用域,里面定義的變量、函數、類都是私有的,對其他文件不可見。NodeJS、webpack就是以CommonJS規范的形式來實現的。
CommonJS模塊特點:
所有代碼都運行在模塊作用域,不會污染全局作用域。
模塊可以多次加載,但是只會在第一次加載時運行一次,然后運行結果就被緩存了,以后再加載,就直接讀取緩存結果。要想讓模塊再次運行,必須清除緩存。
模塊加載的順序,按照其在代碼中出現的順序。在瀏覽器環境中,對于模塊的下載很大程度上取決于網速的快慢,因此極有可能出現長時間等待現象,從而阻塞瀏覽器的渲染。所以就必須采用異步模式(AMD、CMD)。AMD模塊規范采用異步加載方式,主要用于客戶端瀏覽器環境下,但既可用于瀏覽器端也可用于服務端,CMD則專注于瀏覽器端的模塊化開發。
AMD和CMD的區別:兩者的區別在于對模塊的加載和執行方式不同,AMD會在加載完模塊的同時去執行模塊,從而擁有延遲低、效率高的特性;CMD則是加載完所有依賴模塊后,再進入程序,遇到需要執行的模塊才會執行相應的操作。
requireJS是基于AMD規范實現的模塊加載器
seaJS是基于CMD規范實現的模塊加載器
上文說道,由于js本身并不像其他傳統的面向對象語言那樣,生來就具備類的概念。所以在實現繼承的同時,需要用到js的原型及prototype機制或apply、call、bind方法來實現。這里直接上碼,介紹幾種常見的繼承方式:
類式繼承
原型鏈繼承
繼承
函數式編程
JavaScript并不是專門的函數式編程語言,但卻能夠應用函數式編程技術,像對象一樣去操控函數。下面就例舉一些JS函數式編程的典型應用:
使用非函數式的方式計算數組中元素的平均值和標準差
使用函數式的編程方式
單線程是JavaScript語言的一大特點,也就是在同一時間只能做一件事。所謂同步,原意就是程序的執行順序與書寫順尋保持一致;而異步,指的是程序并非按照書寫的順序來執行,會存在“跳過”執行的現象。
談及JS異步,就不得不提兩個改變執行順序的基礎函數:setTimeout和setInterval函數。這兩個函數在執行時會被壓入事件循環隊列當中,在當前作用域下的所有程序都執行完成后,才會開始執行排列在事件循環隊列當中的函數,所以這兩個函數能夠改變程序的執行順序。來看例子:
正則表達式大家應該不會陌生,JavaScript中的正則表達式用RegExp類的實例對象來表示,可以使用RegExp()構造函數來創建,也可以用直接量表達式來創建。它的主要功能是用來描述或匹配一段符合某個語法規則的字符串,多用于在一段較長的文本中檢索或替換那些符合模式的字符串內容,也經常用于用戶的輸入校驗。例如,使用如下代碼來解析一個URL:
JavaScript的事件模型,是所有前端研發工程師必須必須必須弄清楚的一個基礎核心概念!下面為了能讓讀者迅速回憶起這部分相關的理論知識,筆者將以關鍵詞的形式進行闡述。
DOM事件流:當用戶觸發事件時,該事件首先會從最頂層的document對象開始,自頂向下沿著DOM樹的結構逐層傳播,直到觸發事件的DOM節點對象。之后會從觸發事件的DOM節點對象開始,自底向上逐層傳播,最后返回到最頂層document對象為止。這就是整個事件流傳播的過程。
事件捕獲:從最頂層的document對象開始,自頂向下沿著DOM樹的結構逐層傳播,直到觸發事件的DOM節點對象的過程。
事件冒泡:從觸發事件的DOM節點對象開始,自底向上逐層傳播,最后到達最頂層的document對象的過程。
阻止事件流傳播:既可以阻止事件捕獲階段的傳播,也可以阻止事件冒泡階段的傳播。在支持addEventListener()方法的瀏覽器中,調用事件對象的stopPropagation()方法阻止事件傳播。在IE9之前,設置事件對象的cancelBubble屬性為true來實現阻止事件進一步傳播。
阻止事件的默認行為:在支持addEventListener()的瀏覽器中,調用事件對象的preventDefault()方法取消事件的默認操作。在IE9之前,設置事件對象的returnValue屬性為false來阻止事件的默認行為。
事件委托/事件代理:利用事件冒泡的原理,將事件加到目標節點的父級節點上,觸發執行效果。好處就是:(1)可以減少事件綁定的次數,利于提高性能。(2)新添加的元素還會有之前的事件。
Ajax是瀏覽器專門用來和服務器進行交互的異步通訊技術,其核心對象是XMLHttpRequest,通過該對象可以創建一個Ajax請求。為了防止XSS攻擊,瀏覽器對Ajax做了限制,不允許Ajax跨域請求服務器,就是只能訪問當前域名下的url。
JS的跨域訪問,就是在不同的域名下進行HTTP請求與響應。JSONP就是一種常用的跨域通信方式,他利用了腳本跨域能力來模擬Ajax請求。
JSONP原理:由于Ajax請求受到同源策略的限制,所以無法跨域訪問數據。服務端需要拼接的回調函數及返回數據
注意:這里用callback參數字段將客戶端需要執行的回調函數名傳給服務端,服務端只需在封裝好json數據后,根據該字段值動態創建同名的回調函數即可。
文檔對象模型(document object model)是用來表示和操作HTML和XML文檔內容的基礎API。Document類型代表了一個HTML或XML文檔,document對象則是用來保存整個web頁面的dom結構,在頁面上所有的元素最終都會映射為一個dom對象。對頁面節點的操作也是通過document對象中的方法來實現的。
document對象中常用的Dom操作方法有:getElementById();getElementsByClassName();querySelector();getAttribute();等等。
瀏覽器對象模型(browser object model)是用于和瀏覽器窗口進行交互的對象,也可用于窗口與窗口之間的通信。它的核心對象是window,在window對象當中也提供了很多其他對象屬性用于操作和管理瀏覽器的各個部分。常用的window對象屬性有:
Location對象:表示該窗口中當前顯示的文檔的URL.。
History對象:用于將窗口的歷史瀏覽記錄用文檔和文檔狀態列表的形式表示。
Navigator對象:該對象包含了瀏覽器廠商和版本信息。
Screen對象:它提供了有關窗口顯示大小和可用的顏色數量信息。
常用的對話框也屬于掛載在window對象上的方法:alert(); confirm(); prompt();
無知不是無辜,而是有罪。”
在對談性諱莫如深的大環境里,我國的性教育現狀還有待提高,不少人抱怨根本無法獲得完備的性知識,甚至就連滿口說黃色笑話的男性在這方面,居然也是極為匱乏的,實在令人感到汗顏。
但是盡管如此,依舊有部分朋友想完善自我,提升自己的素養,卻苦于無法尋到資源。
為了解決大家的煩惱,這里將會提供一些基礎的性知識點和自學的渠道和方法。
01.
成年后我們必須知道的性教育、性知識
1、性教育包括傳避孕知識、性心理知識、性生理知識、預防性病和艾滋病知識、性衛生知識、性道德知識。
2、男性下體有2個洞,是尿道(也是排精管道)和肛門。女性有3個,從上往下分別是尿道,陰道和肛門。
3、廣義的性疾病有幾十種,危害重的性疾病共六種。
其中國內公認的八種性病為:艾滋病、淋病、梅毒、尖銳濕疣、生殖器皰疹、軟下疳、性病性淋巴肉芽腫、非淋菌性尿道炎。
另外,世界衛生組織,又將20多種通過性行為,引起的感染性疾病,列入性病范疇。
4、艾滋病,簡稱HIV,只有2種傳播方式:母嬰傳播和性傳播,潛伏期短則數月,長可達15年或以上,平均8~9年。
尖銳濕疣,簡稱HPV,是由人類乳頭狀瘤病毒感染人的泌尿生殖器以及肛門周圍所引起的一種常見的性傳播疾病,潛伏期為1-8個月,平均3個月。
一定要多了解尖銳濕疣的圖片和病例,這是最常見的性疾病,這樣可以幫我們判斷對方是否有性疾病——前往微博“許超醫生”主頁。
結婚前婚檢是有必要的。
5、男女都需要注意私處的衛生,尤其是女性容易感染,需要經常洗護私處,可借助洗護用品。
6、女性月經來臨,可以用衛生紙或者衛生棉條。
7、孩子是從陰道生出來的,接吻不會引起懷孕。
8、可靠的避孕方法主要有避孕套、吃避孕藥、輸卵管和輸精管包扎、宮內節育器。避孕套是最常用的方法,如果懂得正確使用避孕套,避孕成功率會在98%左右。
9、不太安全的避孕方法有體外射精、安全期避孕、緊急避孕藥。
10、在臨床上,建議女性緊急避孕藥一年最多只能服用三次。經常吃緊急避孕藥對女性身體危害很大,可能會導致月經不調、亂卵巢萎縮、懷孕困難,還會出現一些不良反應。
11、性教育如果只把huang片作為唯一獲取的渠道,這個人是非常可悲而匱乏的。
12、色情和性愛是有區別的,不能混為一談。
瀏覽器經常彈出一些色情廣告,經常看一些色情視頻與動畫動漫,其畫面都會對人在精神上產生很大的刺激,產生多巴胺,多看會上癮。
甚至需要找更多更刺激的動作片才能滿足,閾值變高,不利于心理健康。
可以看看【TED演講:偉大的色情實驗-嗶哩嗶哩】 https://b23.tv/gY5adRT
https://m.toutiao.com/is/rNUJTXN/ - 色情片,是怎樣傷害你的大腦的?-
13、huang片中大部分內容并不適合作為愛情男女參考借鑒,因為它是有著很明顯的迎合男性市場、激發消費的導向,表演成分過大,女性表現得像工具人,沒有愛的感覺。一般女性看了會感到不受尊重,羞恥或者惱怒。
如果把這些視頻中當真并且不能自拔,那么已經在猥瑣男(女)的路上越跑越遠了。
14、同房之前,不論男女都要清洗會陰,洗掉臟物和殘留的尿液,男性如果包皮過長還應該將包皮垢里面的污垢清洗干凈。
同房時保持床鋪、床單的干凈。同房之后要及時排尿,男女雙方都要將外陰用溫開水,及時擦干凈。
如果不清理的話,會發生尿路交叉感染的情況,很快就會造成雙方排尿困難,膀胱控制力下降。
15、人工流產對身體的危害很大,有子宮內膜損傷、感染、貧血等。藥物流產也有傷害。
16、一般在同房或者排卵之后10-14天,能知道自己是否懷孕了。初步可用測試懷孕的試紙,準確率比較高。后續可進行血液檢測、B超檢查。
17、自慰并不可恥,男女均可,沒有女性不能自慰的說法,男性也不必過于有負罪感。但不可以過于頻繁,如果上癮,會嚴重影響日常生活和健康。
18、性生活頻率多少是最好?可參考性愛頻率公式:性愛頻率=年齡的首位數×9。即用自己年齡的十位數乘以9,所得乘積的十位數即為一個性愛周期所持續的天數,而個位則為應有的性愛頻率,要想充分享受高質量的性生活,需要掌握科學的性知識和性方法。
這個公式適用于20歲以上的成年人。例如一位25歲的人,他(她)的性愛公式為2×9=18,18是10和8的組合,也就是說適合他(她)的性愛頻率為10天內過8次性生活,超過個這頻率就過于頻繁,可能引起身體不適了。
一個65歲的人,則是6×9=54,取54的十位數,也就是50天4次。
國內醫生建議,若是年輕人且身體狀況較好,通常建議可一周進行2-3次同房,而對于年紀較大或者體質欠佳者,則建議一周1-2次即可。
19、要想判斷性生活有無過度,可根據性交后第二天有無局部或全身的不適來判斷。
比如性生活后第二天,倦怠乏力、頭暈目眩、氣短心跳、神態憔悴、形體消瘦、面色蒼白等,出現影響體能的癥狀,甚至影響工作和生活,
或者感到會陰或小腹存在疼痛、酸脹等不適,前列腺局部有充血、水腫、炎癥等情況,
則可認為性生活過度,需要減少性生活的頻率。
20、性癮又叫性高潮癮,全稱性愛上癮癥,是指個體出現強烈的、被迫的連續或周期性的性沖動行為,如果這些性沖動得不到滿足,就會產生焦慮不安的痛苦感覺。
21、性傾向有三種:異性戀、同性戀、雙性戀。
22、強奸普通成年婦女,處三年以上十年以下有期徒刑。強奸未成年少女很有可能處十年以上有期徒刑、無期徒刑或者死刑。強奸男子,在中國不叫強奸罪,叫侮辱罪。
23、適當的性生活對身體健康有益,甚至還可以降低發病率,增加長壽的可能。
性愛不僅僅指性交,它其實包括溫柔的撫摸、親吻、前戲、器官互動,是可以帶著情感融入的性行為,有激情,有溫柔,有情趣,但不是粗魯、猥瑣、變態、無情。
24、過度性生活對人體不利,要清心寡欲,平日節欲,節省精力和體力,才有可能在事業和學業上取得成功。不可過于沉迷房事。
曾仕強先生曾經說過,人活著的意義,本就是一生尋找人類和動物那細微的不同之處。人似乎和原始動物沒有什么區別,都是原始欲望驅動的,但我們依舊要人自己找出那一點點不同之處。
02.
下面是一些可供學習性知識的網站、書籍等渠道。
1、性教育網站
(1)大型性教育科普網站Pornhub
(2)知性(http://knowsex.net)國內的一家性教育網站
(3)Archive for Sexology
號稱“世界最大的人類性學網站”,偏學術向的醫學資料庫。http://www.sexarchive.info/CH/home.htm
(4)香港特區教育局 性教育
香港特別行政區教育局的性教育專欄,資源也很多,以粵語為主。內地訪問不暢。
https://www.edb.gov.hk/tc/curriculum-development/4-key-tasks/moral-civic/sea/sea.html
(5)《中國性科學》雜志,網站 http://www.zgxkx.com/
(6)《女性健康》美國雜志,網站
http://www.womenshealthmag.com/
2、電影、電視劇
(1)《活色生香》導演佩德羅·阿莫多瓦。
這一部專講靈肉合一,什么叫做愛的精彩電影。一邊講什么是愛,一邊專門治療自以為是、目中無人的直男癌。豆瓣評分7.6
(2)《17.3 about a sex》日本電視劇,豆瓣9.0分高分。
有人評價,音樂、科普、教育、三觀等,無論從哪種角度都想給滿分。每集不到30分鐘,一共9集的小短劇,卻集齊了男性凝視、無性戀、性病、自慰、泛性戀、性安全、自我認同和社會認同等多方面的議題。
(3)《下輩子我再好好過》
撕開遮羞布,尊重人性而不該泯滅人性。
(4)《如果早知道男生也會被性侵》
(5)《sex education》也叫《性愛自修室》
(6)《21世紀性愛指南》
(7)《大學女生的性生活》
(8)《好想做一次》
3、書籍
兒童性科普書籍:
《身體密碼》
《青春期教育》(初級中學課本)
《她來了請準備》
《重要的性》
《愛與生命》
成人的
《性健康》科學技術文獻出版社
《性的知識》人民衛生出版社
《性生活常識必讀全書》中國婦女出版社
《男女結婚醫學手冊:新婚必讀 》性教育夫妻生活新婚必備性書籍
《新婚夫妻保健知識問答 》內容目錄如下圖
《艾滋病防治88問》內容目錄如下圖
《婚前準備 新婚保健 備孕優生三部曲 》
《解決女性身體煩惱一本通》內容目錄如下圖
《調情學》[美]瓊·史密斯
《誘惑的藝術》
《愛的藝術》
《中國性史圖鑒》
《男女性愛知識大全》
《書中秘本》作者:周順成(房中術)內容目錄如下圖
《夫妻前戲的技巧》
《性高潮的科學》作者:胡佩誠 人民衛生出版社 兩性健康學術交流
《現代夫妻性生活1000問》
《性愛指導》
《經典/陰陽、房事、雙修 中國傳統兩性養生文化 》作者:郝勤著
《女性陰部健康特別指南》 作者:謝非編 北京:中國婦女出版
《性學三論》作者:弗洛伊德
《愛與婚姻》 作者:郎景和 湖北科學技術出版社
《好的婚姻要守護財產和愛:升級增訂版》給中國人的婚姻財產守護指南
《海蒂性學報告》(全三冊)
《金賽性學報告》
《性學觀止》
《親密之愛》 [美] 克利福德?彭納 喬伊斯?彭納
《性心理學》
《同性戀亞文化》李銀河
《前戲技巧》
《性愛指導》
《婚前性行為》
《性愛實戰指南》
《性愛基礎知識》
《懶女孩的性指南》
《自慰:一種巨大恐懼的歷史》
《孤獨的性:手淫文化史》
《生命的不可思議:胡因夢自傳》譚崔式的性愛
《胡因夢的性成長之路》胡因夢梳理了她的六段性生活
各位有興趣的還可以查看性教育調查報告和相關學術文獻
4、性學研究的先驅人物:
國內
(1)張競生
民國第一批留洋(法國)博士,北京大學哲學系教授,率先提出計劃生育,出版《性史》
(2)李銀河
中國第一位研究性的社會學家,自由主義女性主義者,出版《性社會學》、《中國人的性愛與婚姻》
(3)潘綏銘
稱為“中國性學第一人”,他主要從事社會學研究方法、性社會學和性別人類學研究。出版《中國性現狀》《性,你真的懂了嗎?》《中國性學百科全書——性社會學卷》《中國大學生的性行為,1991-1997》
國外
(4)威廉·馬斯特(William H.Masters)
美國婦科醫生、人類性研究和性治療領域的先驅
(5)阿爾弗雷德·金賽
美國生物學家及性學家,掀起了一場性的革命。
5、性教育博主
(1)微博 “許超醫生”
(2)微博“我叫皮小徐”
(3)微博“曾博士”
(4)嗶哩嗶哩 “硬糖視頻”
(5)“婦產科女司機颯姐”
可以去這幾個博主那里查看他們發布的作品了解學習噢,都是做的很好的科普。
以上就是所有的整理了,我也算是為中國的性教育進程盡一點微薄之力了,希望對你有幫助哦,有興趣的伙伴可以收藏起來哦!不謝。
*請認真填寫需求信息,我們會在24小時內與您取得聯系。