js对象、构造函数、命名空间、方法、属性



<script language="javascript">
 var myNameSpace = new Object(); //构造一个命名 空间myClass

  //类的属性
 myNameSpace.names="cnscn";
 myNameSpace.age="30";

 myNameSpace.ClassPersons=function(argName,argAge){ //构造类名,即构造函数
     this.names=argName;
     this.age=argAge;
  }

 myNameSpace.ClassPersons.prototype={//类方法的定义
    //方法getName()
     getName:function(){
       alert(this.names);
     }, //注意这里是"逗号"
    //方法setName(argName)
     setName:function(argName){
        this.names=argName;
     }
  }

  var obj=new myNameSpace.ClassPersons("yao", 23);
  obj.getName();
  obj.setName("hhhh");
  obj.getName();
</script>

<script language="javascript">
  var myClass = new Object();

  myClass.names="cnscn";
  myClass.age="30";

 
 //定义类ClassPersons
  myClass.ClassPersons=function(argName,argAge){
     this.names=argName;
     this.age=argAge;
  }

  myClass.ClassPersons.prototype={
     getName:function(){
       alert(this.names);
     },
     setName:function(argName){
        this.names=argName;
     }
  }

  //定义类ClassUsers
  myClass.ClassUsers=function(argName,argAge){
     this.names=argName;
     this.age=argAge;
  }

  myClass.ClassUsers.prototype={
     getName:function(){
       alert(this.names);
     },
     setName:function(argName){
        this.names=argName;
     }
  }

  var obj=new myClass.ClassPersons("yao", 23);

  obj.getName();
  obj.setName("hhhh");
  obj.getName();

  var obj2=new myClass.ClassUsers("yao", 23);

  obj2.getName();
  obj2.setName("hhhh");
  obj2.getName();
</script>

1)//namespace.js
  var myClass = new Object();

  myClass.names="cnscn";
  myClass.age="30";

2)//ClassPersons.js
  myClass.ClassPersons=function(argName,argAge){
     this.names=argName;
     this.age=argAge;
  }

  myClass.ClassPersons.prototype={
     getName:function(){
       alert(this.names);
     },
     setName:function(argName){
        this.names=argName;
     }
  }

3)//ClassUsers.js
  //定义类ClassUsers
  myClass.ClassUsers=function(argName,argAge){
     this.names=argName;
     this.age=argAge;
  }

  myClass.ClassUsers.prototype={
     getName:function(){
       alert(this.names);
     },
     setName:function(argName){
        this.names=argName;
     }
  }

.引用
<script type="text/javascript" src="namespace.js"></script>
<script type="text/javascript" src="ClassPersons.js"></script>
<script type="text/javascript" src="ClassUsers.js"></script>

<script language="javascript">
  var obj=new myClass.ClassPersons("yao", 23);

  obj.getName();
  obj.setName("hhhh");
  obj.getName();

  var obj2=new myClass.ClassUsers("yao", 23);

  obj2.getName();
  obj2.setName("hhhh");
  obj2.getName();
</script>

//构造函数
  function Person(name){
      //类变量
     this.name = name;
     this.age  = 0;

     this.gender = 0;

     this.pets = new Array();
   }

   //类setName(name)的函数
  Person.prototype.setName=function(name){
      this.name=name;
   }

   //类getName(name)的函数
  Person.prototype.getName=function(){
      return this.name;
   }

   //类pushPetsArr(item)的函数
  Person.prototype.pushPetsArr=function(item){
      this.pets[this.pets.length] = item;
   }

//构造函数
  function Person(name){
      //类变量
      this.name = name;
      this.age  = 0;
      this.gender = 0;
      this.pets = new Array();
   }

   //类setName(name)的函数
  Person.prototype = {
      setName: function(name){
           this.name=name;
       },

       //类getName(name)的函数
      getName: function(){
           return this.name;
       },

       //类pushPetsArr(item)的函数
      pushPetsArr: function(item){
           this.pets[this.pets.length] = item;
       }
   }

时间: 2024-09-30 15:30:09

js对象、构造函数、命名空间、方法、属性的相关文章

判断JS对象是否拥有某属性的方法推荐_javascript技巧

两种方式,但稍有区别 1,in 运算符 var obj = {name:'jack'}; alert('name' in obj); // --> true alert('toString' in obj); // --> true 可看到无论是name,还是原形链上的toString,都能检测到返回true. 2,hasOwnProperty 方法 var obj = {name:'jack'}; obj.hasOwnProperty('name'); // --> true obj.

多个jsp页面共享一个js对象的超级方法

 今天,在项目中遇到一个问题,两个js页面要共享一个就js对象.js全局变量和静态变量都不行,其他苦逼的小农们就不要去强求了.而LZ又不想用cookie来存放,一是不安全,二个人喜好.最后发现一种超级方法来解决这个困扰,那就是用window.top['_CACHE']来存放这个变量,即可实现,不同Jsp页面直接的对象共享. var share = { /** * 跨框架数据共享接口 * @param {String} 存储的数据名 * @param {Any} 将要存储的任意数据(无此项则返回被

多个jsp页面共享一个js对象的超级方法_JSP编程

今天,在项目中遇到一个问题,两个js页面要共享一个就js对象.js全局变量和静态变量都不行,其他苦逼的小农们就不要去强求了.而LZ又不想用cookie来存放,一是不安全,二个人喜好.最后发现一种超级方法来解决这个困扰,那就是用window.top['_CACHE']来存放这个变量,即可实现,不同Jsp页面直接的对象共享. var share = { /** * 跨框架数据共享接口 * @param {String} 存储的数据名 * @param {Any} 将要存储的任意数据(无此项则返回被查

Json字符串转换为JS对象的高效方法实例_javascript技巧

今天学习JQuery源码看到一下方法,原来还可以这样解析JSON字符串: 复制代码 代码如下:   parseJSON: function( data ) {  if ( typeof data !== "string" || !data ) {   return null;  }   // Make sure leading/trailing whitespace is removed (IE can't handle it)  data = jQuery.trim( data );

显示js对象所有属性和方法的函数_javascript技巧

要想看到实际效果,可以先声明一些属性跟方法,否则是看不到,仔细往下看有例子的. 复制代码 代码如下: function ShowObjProperty(Obj) { var PropertyList=''; var PropertyCount=0; for(i in Obj){ if(Obj.i !=null) PropertyList=PropertyList+i+'属性:'+Obj.i+'\r\n'; else PropertyList=PropertyList+i+'方法\r\n'; }

判断JS对象是否拥有某种属性的两种方式_javascript技巧

两种方式,但稍有区别 1,in 运算符 复制代码 代码如下: var obj = {name:'jack'}; alert('name' in obj); // --> true alert('toString' in obj); // --> true 可看到无论是name,还是原形链上的toString,都能检测到返回true. 2,hasOwnProperty 方法 复制代码 代码如下: var obj = {name:'jack'}; obj.hasOwnProperty('name'

javascript-JS里报错对象不支持“ReceiveData”属性或方法

问题描述 JS里报错对象不支持"ReceiveData"属性或方法 对象不支持"ReceiveData"属性或方法 并不知道要PO什么 需要PO什么你告诉我 我PO出来 大神求指导 解决方案 看看什么库缺少了,没有定义 解决方案二: 把这个对象所有属性打印出来看看,是否有这个方法,属性.调用对了吗 解决方案三: js中对象不支持此属性或方法js 对象不支持此属性或方法js 对象不支持此属性或方法----------------------

JavaScript高级程序设计(第3版)学习笔记11 内建js对象_基础知识

内建对象就好比是JDK中的类库,开发者可以直接拿来使用,这极大的方便了常见的编程任务.这篇文章就来浏览一下主要的内建对象,当然,我们并不是第一次接触内建对象,前面已经接触到的就有Object.Function.Boolean.Number.String,对于已经介绍过的,这里再总结复习一下,没有介绍过的,根据相关性来对比的总结,RegExp对象及正则表达式在下一篇中再单独介绍. 1.内建全局单例对象 (1)内建全局单例对象:在整个执行环境中只有一个对象实例,这些对象没有内部属性[[Constru

Android WebView的Js对象注入漏洞解决方案

最近在做一个项目过程中,发现了一个很严重的安全漏洞,这个漏洞是乌云平台(http://www.wooyun.org)报告出来的. 1,使用场景 我们很多时候要使用WebView来展示一个网页,现在很多应用为了做到服务端可控,很多结果页都是网页的,而不是本地实现,这样做有很多好处,比如界面的改变不需要重新发布新版本,直接在Server端修改就行了.用网页来展示界面,通常情况下都或多或少都与Java代码有交互,比如点击网页上面的一个按钮,我们需要知道这个按钮点击事件,或者我们要调用某个方法,让页面执

jquery ajax分页 js对象

Java代码   <div class="sub_menus module-manager">       <div class="module-list">           <table class="list" id="tab_mod">               <tr class="t_title">                   <