javascript 对象 与 prototype 原型用法实例分析

 更新时间:2019年11月11日 09:04:36   作者:倾听岁月  
这篇文章主要介绍了javascript 对象 与 prototype 原型用法,结合实例形式分析了javascript 对象 与 prototype 原型实现对象创建、继承、拷贝等相关操作技巧,需要的朋友可以参考下

本文实例讲述了javascript 对象 与 prototype 原型用法。分享给大家供大家参考,具体如下:

我们做程序开发的,经常面对的就是一个一个对象。那么在javascript中我们怎么去创建一个类以及一个对象呢?

<script type="text/javascript">
  //创建一个Test对象
  function Test(){
  }
  var test = new Test();
  //创建一个对象
  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>

构造方法

<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>

原型

原型是一个对象,其他对象可以通过它实现属性继承。
任何一个对象都可以成为原型么?

哪些对象有原型

所有的对象在默认的情况下都有一个原型,因为原型本身也是对象,所以每个原型自身又有一个原型(只有一种例外,默认的对象原型在原型链的顶端。)

<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测试上述代码运行效果。

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《javascript面向对象入门教程》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结

希望本文所述对大家JavaScript程序设计有所帮助。

相关文章

  • 使用JavaScript制作待办事项列表的示例代码

    使用JavaScript制作待办事项列表的示例代码

    这篇文章主要介绍了如何使用 JavaScript创建待办事项列表HTML的完整信息和教程,文中但是示例代码讲解详细,感兴趣的同学可以动手试一试
    2022-01-01
  • JavaScript动态创建div属性和样式示例代码

    JavaScript动态创建div属性和样式示例代码

    动态创建div属性和样式在某些情况下还是比较实用的,下面为大家详细介绍下js中div属性和样式的动态创建,感兴趣的朋友可以参考下
    2013-10-10
  • javascript表单验证大全

    javascript表单验证大全

    JavaScript是用来在数据被传输到服务前对html表单中输入的数据进行验证,使用javascript对用户输入的信息进行验证是项目必须的,下面小编给大家整理一些比较常用的javascript表单验证,需要的朋友可以参考下
    2015-08-08
  • 在for循环中length值是否需要缓存

    在for循环中length值是否需要缓存

    这篇文章主要介绍了在for循环中length值是否需要缓存,需要的朋友可以参考下
    2015-07-07
  • js返回上一页并刷新的多种实现方法

    js返回上一页并刷新的多种实现方法

    这篇文章主要介绍了js返回上一页并刷新的几种方法,需要的朋友可以参考下
    2014-02-02
  • 浅析JavaScript作用域链、执行上下文与闭包

    浅析JavaScript作用域链、执行上下文与闭包

    JavaScript 采用词法作用域(lexical scoping),函数执行依赖的变量作用域是由函数定义的时候决定,而不是函数执行的时候决定,通过本文给大家介绍JavaScript作用域链、执行上下文与闭包相关知识,感兴趣的朋友一起学习吧
    2016-02-02
  • 小程序实现搜索框

    小程序实现搜索框

    搜索框无论是在电商网站还是小程序中都很常见,这篇文章主要就为大家详细介绍了小程序如何实现搜索框,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-07-07
  • JS逻辑运算符短路操作实例分析

    JS逻辑运算符短路操作实例分析

    这篇文章主要介绍了JS逻辑运算符短路操作,结合实例形式分析了javascript三个逻辑运算符短路操作的原理与使用技巧,需要的朋友可以参考下
    2018-07-07
  • CSS鼠标响应事件经过、移动、点击示例介绍

    CSS鼠标响应事件经过、移动、点击示例介绍

    本文为大家介绍下CSS 鼠标响应事件:鼠标经过CSS、鼠标移动CSS、鼠标点击CSS以及示例,喜欢的朋友可以参考下
    2013-09-09
  • JavaScript 替换所有匹配内容及正则替换方法

    JavaScript 替换所有匹配内容及正则替换方法

    这篇文章主要介绍了JavaScript 替换所有匹配内容,文中给大家提到了使用正则表达式替换方法,通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2020-02-02

最新评论