欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

javascript 對象 與 prototype 原型用法實例分析

 更新時間:2019年11月11日 09:04:36   作者:傾聽歲月  
這篇文章主要介紹了javascript 對象 與 prototype 原型用法,結(jié)合實例形式分析了javascript 對象 與 prototype 原型實現(xiàn)對象創(chuàng)建、繼承、拷貝等相關(guān)操作技巧,需要的朋友可以參考下

本文實例講述了javascript 對象 與 prototype 原型用法。分享給大家供大家參考,具體如下:

我們做程序開發(fā)的,經(jīng)常面對的就是一個一個對象。那么在javascript中我們怎么去創(chuàng)建一個類以及一個對象呢?

<script type="text/javascript">
  //創(chuàng)建一個Test對象
  function Test(){
  }
  var test = new Test();
  //創(chuàng)建一個對象
  var obj = new Object();
  //json 對象
  var json1 = {};
</script>

類都有自己的屬性和方法,我們怎么去定義

<script type="text/javascript">
  function Test(){
    this.name = "譚勇";
    this.age = 22;
    this.getName = function(){
      return this.name;
    }
    this.getAge = function(){
      return this.age;
    }
  }
  var test = new Test();
  console.log(test); //查看一下日志
  var obj = new Object();
  obj.name = "譚勇";
  obj.age = "22";
  obj.getName = function(){
    return this.name;
  };
  obj.getAge = function(){
    return this.age;
  };
  console.log(obj);  //查看下日志
  var json1 = {};
  json1["name"] = "譚勇";
  json1["age"] = 22;
  json1["getName"] = function(){
    return this.name;
  }
  json1["getAge"] = function(){
    return this.age;
  }
  console.log(json1); //查看下日志
</script>

構(gòu)造方法

<script type="text/javascript">
  function Test2(name,age){
    this.name = name;
    this.age = age;
    this.getName = function(){
      return this.name;
    }
    this.getAge = function(){
      return this.age;
    }
  }
  var test2 = new Test2("譚勇",22);
  console.log(test2);  //查看下日志
</script>

行為有形參

<script type="text/javascript">
  function Test3(){
    this.demo = function(param_str){
      return param_str;
    }
  }
  var test3 = new Test3();
  console.log(test3.demo("aaaaaaaaaaaaaaaaaaaa"));
</script>

繼承

<script type="text/javascript">
  function parent(){
    this.getStr = function(){
      return "test str";
    }
  }
  function son(){}
  son.prototype = new parent();
  var sona = new son();
  console.log(sona.getStr());
</script>

拷貝繼承

<script type="text/javascript">
  function extend(Child, Parent) {
      var p = Parent.prototype;
      var c = Child.prototype;
      for (var i in p) {
        c[i] = p[i];
      }
  }
  function parent(){
  }
  parent.prototype.getStr=function(){
    return "test str";
  }
  function son(){
  }
  extend(son,parent);
  var sona = new son();
  console.log(sona.getStr());
</script>

原型

原型是一個對象,其他對象可以通過它實現(xiàn)屬性繼承。
任何一個對象都可以成為原型么?

哪些對象有原型

所有的對象在默認(rèn)的情況下都有一個原型,因為原型本身也是對象,所以每個原型自身又有一個原型(只有一種例外,默認(rèn)的對象原型在原型鏈的頂端。)

<script type="text/javacript">
  var str = "譚勇";
  String.prototype.getName = function(){
    var strs = "";
    for(var i=0;i<this.length;i++){
      strs += this[i];
    }
    return strs;
  }
  console.log(str.getName());
  console.log(str);
  console.log(str[0]);
</script>

感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具http://tools.jb51.net/code/HtmlJsRun測試上述代碼運行效果。

更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《javascript面向?qū)ο笕腴T教程》、《JavaScript錯誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運算用法總結(jié)

希望本文所述對大家JavaScript程序設(shè)計有所幫助。

相關(guān)文章

  • JS簡單操作select和dropdownlist實例

    JS簡單操作select和dropdownlist實例

    這篇文章主要介紹了JS簡單操作select和dropdownlist的方法,以實例形式講述了js針對服務(wù)器控件select和dropdownlist的讀寫操作方法,是js與.net交互的典型應(yīng)用實例,需要的朋友可以參考下
    2014-11-11
  • 詳解js中的apply與call的用法

    詳解js中的apply與call的用法

    在ECAMScript3給Function的原型定義了兩個方法,它們是Function.prototype.call和Function.prototype.apply。本文詳細(xì)介紹了apply與call的用法,有需要的可以參考下。
    2016-07-07
  • 簡單實現(xiàn)節(jié)流函數(shù)和防抖函數(shù)過程解析

    簡單實現(xiàn)節(jié)流函數(shù)和防抖函數(shù)過程解析

    這篇文章主要介紹了簡單實現(xiàn)節(jié)流函數(shù)和防抖函數(shù)過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-10-10
  • babel之配置文件.babelrc入門詳解

    babel之配置文件.babelrc入門詳解

    本篇文章主要介紹了babel之配置文件.babelrc入門詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-02-02
  • 一文解決微信小程序button、input和image表單組件

    一文解決微信小程序button、input和image表單組件

    在微信小程序開發(fā)中,input?用來實現(xiàn)文本輸入,如輸入用戶名密碼等等,下面這篇文章主要給大家介紹了關(guān)于如何通過一文解決微信小程序button、input和image表單組件的相關(guān)資料,需要的朋友可以參考下
    2022-08-08
  • 最新評論