JS面向对象的方法

原创 2013年12月04日 09:42:18
var userObj = { 

//array用来存放数据
    array: new Array(), 

//得到该对象中存储的全部数据
    getArray:function(){ 
         return this.array; 
    }, 

//初始化对象数据
    setArray:function(tempArray){ 
        this.array = tempArray; 
    }, 

//给对象添加数据
    Add: function(key, value){ 
        var tmpArray = [key, value]; 
        this.array.push(tmpArray); 
    }, 

//返回全部的数据
    iterator:function(){ 
        return this.array; 
    }, 

//用户遍历数据的时候判断是否还有数据
    hasNext:function(){ 
        var temp = this.array.shift(); 
            if(this.array.length > 0){ 
            return true; 
        } 
       else{ 
            return false; 
        } 
    }, 

//遍历的时候得到第一个数据值(key——value)
    next:function(){ 
        var result = this.array.shift(); 
        this.array.unshift(result); 
        return result; 
    } ,
	
//删除数据
	removeData:function(key){
		var temp = this.array;
		var result = new Array();
		for(var i = 0; i < temp.length; i++){
			var values = temp.shift();
			if(values[0] == key){
				continue;
			}
			result.push(values);
		}
		this.array = result;
	},
	
//如果有数据,遍历所有的数据
	print:function(){
		var tempArray = this.array;
		var temp;
		for(var i = 0; i < tempArray.length; i++){
			temp = tempArray.shift();
			document.write("key --> value : " + temp[0] + "-->" + temp[1] +"<br>");
		}
	},
//根据key得到值
	getValueByKey:function(key){
		var tempArray = this.array;
		var result = "";
		for(var i = 0; i < tempArray.length; i++){
			var tempValue = tempArray.shift();
			if(tempValue[0] == key){
				result = tempValue[1];
			}
		}
		return result;
	}
}; 


//添加具体的数据
userObj.Add("name","huangbiao"); 
userObj.Add("age","23"); 
userObj.Add("addr","xi an"); 
userObj.Add("addr","hubei"); 


//移除一个值
//userObj.removeData("name");
//遍历所有的数据
//userObj.print();
//根据key得到对应的value
//alert(userObj.getValueByKey("age"));
alert(userObj.getArray());

//遍历数据是否存在
while(userObj.hasNext()) 
{ 

//得到数组的第一个数据
    var p = userObj.next(); 

//如果是“age”属性就将它的值给弹出来
    if(p[0] == "age") 
   { 
       alert(p[1]); 
   } 
}

 

js对象的深拷贝和浅拷贝

var doctor=extendCopy(Chinese); doctor.career="医生"; console.log(doctor); 前言:uber属性:js本身并没有这个属性。“ube...
  • shuidinaozhongyan
  • shuidinaozhongyan
  • 2017年05月09日 10:55
  • 198

javascript中面向对象的三大作用

面向对象的三大作用 作用1:封装框架 我们可以定义一个对象,去封装一些不同的功能,这样,别人无需了解内部功能如何使实现的,只需要知道如何调用就可以了,这就是所谓的拿来主义。比如一个对象有不同的功能模块...
  • Tyro_java
  • Tyro_java
  • 2016年04月15日 21:19
  • 3198

js面向对象初步探究(上) js面向对象的5种写方法

js面向对象的5种写方法
  • li_li_lin
  • li_li_lin
  • 2014年10月15日 18:29
  • 1495

JavaScript面向对象的三大特征

本来打算写设计模式的,在谈论js的设计模式之前先说一下js的面向对象,因为很多设计模式的实现都掺杂着面向对象的思想,所以先做一下前期铺垫。 js我们都知道是一种动态类型脚本型语言,变量类型无法保...
  • hbsxjs
  • hbsxjs
  • 2017年02月11日 22:26
  • 1949

javascript语言是面向对象还是面向过程?

言下之意,难不成javascript是面向过程?虽然javascript一直容易被人长期误解,但是人家确确实实的是一个面向对象的编程语言,纯爷们一枚。很多人可能觉得只有像java, c++这样的编程语...
  • jean_1221
  • jean_1221
  • 2016年06月16日 18:51
  • 7235

几种典型的面向对象开发方法

摘 要 自80年代后期以来,相继出现了多种面向对象开发方法,文章主要介绍了其中六种典型的面向对象开发方法,并对它们进行了比较。UML的出现意味着开发方法统一化、标准化的新发展,标志着软件自动化的进程又...
  • cheersu
  • cheersu
  • 2009年05月30日 01:59
  • 10209

用面向对象的编程思想去写js

有时候,还会看到一些搞前端的朋友或者苦逼被迫兼职写前端的后端朋友,去写js的时候,还是一个方法一个方法的去罗列。 就像下面这样: function click1(){ alert("1")...
  • u010480479
  • u010480479
  • 2016年08月05日 14:46
  • 2294

JavaScript基础——面向对象的程序设计(一)创建对象的几种方式总结

简介 面向对象(Object-Oriented, OO)的语言有一个标志,那就是它们都有类的概念,而通过类可以创建任意多个具有相同属性和方法的对象。前面提到过,ECMAScript中没有类的概念,因...
  • Goskalrie
  • Goskalrie
  • 2016年06月03日 13:09
  • 3458

原生js面向对象基本思想及介绍

今天学习了js面向对象,勉强算是面向对象吧,首先比较js是基于对象的饿,要想高级语言(java和。net)那样完全面向对象是不可能的,因为面向对象的三大特征,封装,继承,多肽,但在js不存在多肽,因为...
  • u013239236
  • u013239236
  • 2015年01月23日 23:24
  • 2352

JavaScript面向对象焦点图片轮播banner

2016-04-02     JavaScript学习笔记 实例:焦点轮播图 HTML / CSS部分 无标题文档 *{margin:0; padding:0;} ul...
  • perhapschen
  • perhapschen
  • 2016年04月02日 21:15
  • 2267
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JS面向对象的方法
举报原因:
原因补充:

(最多只允许输入30个字)