`

JS原型和原型链

    博客分类:
  • JS
 
阅读更多

    通过prototype来设置对象的原型

    //可以为其添加对应的属性(函数)

    baseprototype.prototype = {

         name:'yx',

         add:function(){}

    } 

    baseprototype.prototype = 1;//错误,不能设置成原子类型的值

     

 //函数,原型
			var baseF = function(x,y){
				this.x = x;
				this.y = y;
			}
			
			baseF.prototype = {
			    add:function(x,y){
					return x+y;
				}
			}
  //继承baseF的 "相加" 方法
			var sub = function(x,y){
				this.x = x;
				this.y = y;
			subtract= function(x,y){
				   return x-y;
				}
				return {
				    S:subtract
				}
			}
            //继承所有  结果为12
            sub.prototype = new baseF();
            //只继承原型链,加上这行结果为22
           //sub.prototype = baseF.prototype;
           //重写原型
			sub.prototype.add = function(x,y){
				return x+y+1;
			}
			var test = new sub();
			var val = test.prototype.add(5,6);
			alert(val);

 
   当JS实例查找对应的属性时: 首先查找自己定义的属性,然后再查找自己的原型链的属性,继而查找它的父类

 

 

 

 

Ps:   1.当一个实例作为<Object>的原型时,这个时候不管你创建多少个<Object>,<Object>的原型指向的都是同一个实例。

         2.“原型"对应的前段语言中 有俩个判断函数 hasOwnPropertype和isPrototypeOf前者只判断对象中定义的属性是否存在。后者则会一直查找到Object.prototype

 

 

分享到:
评论

相关推荐

    JS原型和原型链原理与用法实例详解

    JS原型和原型链是JavaScript语言中的核心概念,它们构成了JavaScript对象继承的基础。在JavaScript中,对象可以通过原型链实现对其他对象的属性和方法的继承。下面我们将详细讲解这两个概念以及它们的工作原理。 **...

    JavaScript原型链

    在JavaScript中,一切皆为对象,而原型链则是实现对象间属性和方法共享的一种机制。理解原型链对于深入学习JavaScript至关重要。 首先,每个JavaScript对象都有一个内部属性`[[Prototype]]`,通常我们通过`__proto_...

    Js原型和原型链1

    JavaScript中的原型和原型链是理解面向对象编程的关键概念。万物皆对象,JavaScript中对象分为两类:普通对象(Object)和函数对象(Function)。函数对象包括通过`new Function`创建的函数,如`f1`, `f2`, `f3`,而...

    js原型链详解

    JavaScript作为一门基于原型的语言,其原型和原型链的概念是理解和掌握JS继承机制的关键。接下来将详细阐述这些概念。 #### 普通对象与函数对象 在JavaScript中,一切皆为对象,但对象可以分为两类:普通对象和...

    深入理解javascript原型和闭包

    深入理解javascript原型和闭包(01)——一切都是对象 深入理解javascript原型和闭包(02)——函数和对象的关系

    js 原型对象和原型链理解

    之前对js中的原型链和原型对象有所了解,每当别人问我什么是原型链和原型对象时,我总是用很官方(其实自己不懂)的解释去描述。有一句话说的好:如果你不能把一个很复杂的东西用最简单的话语描述出来,那就说明你...

    深度探讨javascript函数的原型链和闭包

    理解函数的原型链和闭包对于深入掌握JavaScript至关重要。 首先,让我们看看函数的定义方式。在JavaScript中,我们可以使用`function`关键字直接定义函数,如`function fn(a, b) {}`。此外,函数也可以通过赋值语句...

    强大的原型和原型链

    ### 强大的原型和原型链 #### 前言 JavaScript 的继承机制与传统面向对象语言(如 Java、...通过理解和运用原型和原型链的概念,开发者能够更有效地组织和管理 JavaScript 代码,构建出更加强大和可维护的应用程序。

    JavaScript原型链简单图解

    JavaSciptDOM基本操作,JavaScipt函数基础,JavaScipt流程语句,JavaScript变量,JavaScript数据类型,JavaScript数组,JavaScript正则表达式,JavaScript字符串函数,Window对象等图解。JS高手进阶的工具图谱

    javascript原型和原型链

    一、原型规则 1、所有的引用类型(数组、对象、函数)都具有对象特性,即可自由扩展属性(除了“null”) var array=[];array.a=1; var object={};object.a=1; function func(){}; func.a=1; 2、所有的引用类型...

    基于js原型链的小游戏

    在这个"基于js原型链的小游戏"中,我们看到JavaScript的核心概念——原型链(Prototype Chain)被巧妙地应用于实现游戏逻辑。 原型链是JavaScript实现继承的主要机制,它通过内部的`__proto__`属性将对象链接起来,...

    【技术分享】从浅入深 Javascript 原型链与原型链污染 .pdf

    JavaScript 原型链是语言的核心特性之一,它在实现对象的继承和共享属性时起着关键作用。本文将深入探讨JavaScript原型链的工作原理及其可能导致的安全问题——原型链污染。 首先,JavaScript 中的对象继承并不像...

    图解JS原型和原型链实现原理

    JavaScript中的原型和原型链是其继承机制的核心,理解这两者对于深入学习JS至关重要。本文将通过详细的图解和实例代码,帮助你理解这两个概念及其实现原理。 首先,我们需要明白JavaScript的发展背景。JavaScript...

    JS的原型和原型链.pdf

    - __proto__属性用于访问对象的原型对象,这在理解原型链和属性继承时非常有用。但需要注意的是,__proto__并不是一个正式的属性,而是非标准的,且在最新的JavaScript标准中不推荐直接使用。 - constructor属性用于...

    原型与原型链的实战代码.html

    原型和原型链整体例子从原型的创建,原型与对象的关联关系,实例与原型的关系以及原型链的形成和运用等等均做了例子的说明

    JS原型与原型链的深入理解

    以上内容总结了JavaScript中原型和原型链的基本概念和工作机制。理解这些概念有助于编写更加高效和优雅的代码,并且可以更好地控制对象的创建和继承过程。对于JavaScript开发者而言,掌握原型和原型链的深入理解是...

Global site tag (gtag.js) - Google Analytics