国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JavaScript (六)高級之ECMAScript

2019-11-14 11:54:27
字體:
來源:轉載
供稿:網友

javaScript 的核心 ECMAScript 描述了該語言的語法和基本對象;

DOM 描述了處理網頁內容的方法和接口;

BOM 描述了與瀏覽器進行交互的方法和接口。

,一個完整的 Javascript 實現是由以下 3 個不同部分組成的:

核心(ECMAScript)文檔對象模型(DOM)瀏覽器對象模型(BOM)工廠方法:============

<script type="text/javascript">function createCar() {  var oTempCar = new Object;  oTempCar.color = "blue";  oTempCar.doors = 4;  oTempCar.mpg = 25;  oTempCar.showColor = function() {    document.write(this.color);  };  return oTempCar;}var oCar1 = createCar();var oCar2 = createCar();oCar1.showColor();document.write("<br />")oCar2.showColor();</script>

2.=========構造函數

<script type="text/javascript">function Car(sColor,iDoors,iMpg) {  this.color = sColor;  this.doors = iDoors;  this.mpg = iMpg;  this.showColor = function() {    document.write(this.color);  };}var oCar1 = new Car("red",4,23);var oCar2 = new Car("blue",3,25);oCar1.showColor();document.write("<br />")oCar2.showColor();</script></body>

3.構造函數和工廠方法的區別:

首先在構造函數內沒有創建對象,而是使用 this 關鍵字。使用 new 運算符構造函數時,在執行第一行代碼前先創建一個對象,只有用 this 才能訪問該對象。然后可以直接賦予 this 屬性,默認情況下是構造函數的返回值(不必明確使用 return 運算符)。

現在,用 new 運算符和類名 Car 創建對象,就更像 ECMAScript 中一般對象的創建方式了。

你也許會問,這種方式在管理函數方面是否存在于前一種方式相同的問題呢?是的。

就像工廠函數,構造函數會重復生成函數,為每個對象都創建獨立的函數版本。不過,與工廠函數相似,也可以用外部函數重寫構造函數,同樣地,這么做語義上無任何意義。這正是下面要講的原型方式的優勢所在。

4.原型的方法創建對象:

<script type="text/javascript">function Car() {}Car.PRototype.color = "blue";Car.prototype.doors = 4;Car.prototype.mpg = 25;Car.prototype.showColor = function() {  document.write(this.color);};var oCar1 = new Car();var oCar2 = new Car();oCar1.showColor();document.write("<br />")oCar2.showColor();</script>


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 休宁县| 临湘市| 嘉黎县| 犍为县| 双桥区| 屏东市| 泗洪县| 彭阳县| 惠州市| 伊宁市| 富锦市| 铜鼓县| 邵阳市| 临桂县| 伊川县| 达拉特旗| 临高县| 含山县| 广州市| 新密市| 宁晋县| 建始县| 高淳县| 泽普县| 天镇县| 上饶市| 琼海市| 会理县| 吴堡县| 基隆市| 恭城| 玛纳斯县| 甘孜| 洛宁县| 镇沅| 浦城县| 共和县| 福建省| 临夏市| 高邑县| 晋城|