javascript属性方法访问

来源:互联网 发布:java正则表达式冒号 编辑:程序博客网 时间:2024/05/14 03:40

引言:

作为一个后端开发人员,没有系统的学习过javascript ,都是简单的学习,用的时候就看,总是在调试js花费大量的时间。今天又遇到一个傻瓜问题。成员方法访问不到成员属性。总结记下

var my = new My();function  My (){this.a  = "a1";//对象可以访问 ,成员方法不能直接访问var b = "b1";//私有变量内部方法可以直接访问,事例的对象不能访问//成员方法this.fn = function (){//alert(a);//访问不到//alert(c); 访问不到alert(b);alert(this.c);alert(this.a);}this.fn2 = function (){alert("fn2");}//函数,外部无法调用 function test(){//alert(a);//访问不到//alert(c);访问不到//alert(this.a);//undifine  这个this 不是My 是本身的functionalert(b);}//可以内部调用和var b 一样test();}My.prototype.c = "c1";My.prototype.test1 = function(){//alert(a); 访问不到//alert(b); 访问不到//alert(c); 访问不到alert(this.c);alert(this.a);}
以上是javascript 的对象中的各种调用

总结如下:

       一下用 方法指 this.method= function(){}  用函数指 function fun(){}

this.XX 无论是方法,还是属性,外部是可以调用的,内部如果想访问 用 this.xxx  (外部调用指,实例化对象,然后调用)

        var  xx  这种全局变量相当于java中的私有属性,内部的方法,函数都可以访问。原型链不能访问

       原型链 和 this 的属相方法相同 。只是原型链是所有对象共用内存地址,所以变量是不能访问的,但是属性和方法都是可以正常访问。

       function(上图的test())这种只是一个函数,外部没办法访问,内部的方法也没办法访问,只能是直接使用作为代码模块封装。

0 0
原创粉丝点击