JavaScript 基础篇之对象、数组使用介绍(三)


Posted in Javascript onApril 07, 2012

Javascript:对象
对象我们在前面也简单介绍过,它是一种将多个数据值集中在一个单元的东西,使用名字来存取,它是一个无序的属性集合。
1、创建对象的几种方式

var empty = {} //创建一个没有属性的对象。 
var person = {name:"ben",age:22,sex:'男'}//使用直接量创建对象 
var people = {{name:'Frank',age:21},{name:'Mary',age:21},sex:'MAN'}// 对象的元素可以是对象

2、对象属性
var person = {}; //创建一个对象 
person.name = "Frank"; //添加属性 
person.country = "china"; 
person.age = 22; 
person.american = new Object(); //这个属性是个对象 
person.american.name = "Lisa"; 
person.american.country = "American"; 
person.american.age = 20; 
function displayperson(personmore) //打印上面的对象 
{ 
for(var p in personmore) //枚举循环 
{ 
if(typeof(personmore[p]) == "object")//判断类型 
{ 
for(var o in personmore[p]) 
{ 
document.write("American people :" +o+"\t" +personmore[p][o]+"<br />"); 
} 
document.write("<br />"); 
continue;//结束本次循环,进行下一次循环. 
document.write("china people :"+ p+"\t" + personmore[p] +"<br />"); 
} 
} 
displayperson(person);//调用函数 
//输出china people :name Frank 
//china people :country china 
//china people :age 22 
//American people :name Lisa 
//American people :country American 
//American people :age 20

3、删除属性
使用delete运算符
delete person.american;//就可以自己删除对象的属性 
delete 是不能删除对象的。

4、hasOwnProperty()方法和isPrototypeOf()方法
其实这两个方法,在这里说初学的朋友可能会和我当时学到这里一样,看不懂,但是没关系,可以跳过去,到时候我们学到继承的时候你在回头看看,
就明白了。
4.1:hasOwnProperty()方法,如果对象用一个单独字符串参数所指定的名字来本地定义一个非继承的属性,就返回true。否则返回false。
function House(price,area,developers) 
{ 
this.price = price; 
this.area = area; 
this.developers = developers; 
} 
House.prototype.housevalue = function(){return this.price*this.area;} 
function HouseSon(price,area,developers,city) 
{ 
House.call(this,price,area,developers); 
this.city = city; 
} 
HouseSon.prototype = new House(10000,80,"vanke");//获取House的属性 
delete HouseSon.prototype.price;//删除 
delete HouseSon.prototype.area; 
delete HouseSon.prototype.developers; 
HouseSon.prototype.container = function(){return "container" + this.price * this.area;} 
for(var i in HouseSon.prototype) 
{ 
document.write(i+"<br />"); 
} 
var house = new HouseSon(20000,180,"vanke","shenzhen"); 
document.write(house.container()+"<br />"); 
document.write(house.housevalue()+"<br />"); 
document.write(house.hasOwnProperty("housevalue")+"<br />");//这是原型 
document.write(house.hasOwnProperty("price")+"<br />");//本地

Javascript:数组
数组是一个有序的集合,每个元素在数组中都有一个数字化的位置,可以使用小标访问,由于javascript是一种非数据类型的语言,所以里面可以包涵不同类型。
1、数组的创建
var array = [] //不包涵任何元素的数组 
var person = ["Frank",22,'男 '];//带不同元素的数组 
var value = 100; 
var num = [value+12,value-23,value*2];//支持表达式 
//当然还有使用Array来创建,可以有不同类型的参数,可以是对象,数组等。

2、数组的添加,删除,遍历。
由于添加,遍历都比较简单,就不举例说明,但是这么还是说说删除吧!
function diaplayarray(arr) //执行打印任务的函数 
{ 
if(!arr)return; 
for(var num =0;num<arr.length;num++) 
{ 
document.write("Num is "+ arr[num]+ "\t"); 
} 
document.write(" "+"<br />"); 
} 
var array = [2,32,14,57,6]; 
document.write(array.shift()+"<br />"); //删除数组中的第一个,返回删除的值2 
document.write(array.pop()+"<br />"); //删除数组中的最后一个,返回删除的值6 
document.write(array.join("*")+"<br />");//将数组元素用*连接返回一个字符串32*14*57 
document.write(array.push(100) +"<br />");//添加数组元素 
array.reverse();//颠倒数组元素顺序 
diaplayarray(array);//输出Num is 100 Num is 5 Num is 4 Num is 3 
array.splice(1,2,300,600);//从数组第二个开始删除(含第二个),到第三个,后面300,600是新插入的值 
diaplayarray(array);//输出Num is 100 Num is 300 Num is 600 Num is 32

小结:同志们辛苦了..........
关于对象和数组就介绍到这里吧,接下来我们马上就要到javascript客户端了。
Javascript 相关文章推荐
js模拟实现Array的sort方法
Dec 11 Javascript
JS判定是否原生方法
Jul 22 Javascript
js密码强度校验
Nov 10 Javascript
Angular使用$http.jsonp发送跨站请求的方法
Mar 16 Javascript
JavaScript设计模式之代理模式详解
Jun 09 Javascript
理解 Node.js 事件驱动机制的原理
Aug 16 Javascript
原生实现一个react-redux的代码示例
Jun 08 Javascript
React中嵌套组件与被嵌套组件的通信过程
Jul 11 Javascript
Vue.extend实现挂载到实例上的方法
May 01 Javascript
vue移动端使用canvas签名的实现
Jan 15 Javascript
安装多版本Vue-CLI的实现方法
Mar 24 Javascript
解决ant-design-vue中menu菜单无法默认展开的问题
Oct 31 Javascript
JavaScript 基础篇之运算符、语句(二)
Apr 07 #Javascript
为原生js Array增加each方法
Apr 07 #Javascript
jquery 操作DOM案例代码分享
Apr 05 #Javascript
jquery 操作DOM的基本用法分享
Apr 05 #Javascript
文本框输入时 实现自动提示(像百度、google一样)
Apr 05 #Javascript
Ajax搜索结果页面下方的分页按钮的生成
Apr 05 #Javascript
jQuery之$(document).ready()使用介绍
Apr 05 #Javascript
You might like
Breeze 文章管理系统 v1.0.0正式发布
2006/12/14 PHP
php字符串函数学习之substr()
2015/03/27 PHP
PHP内置加密函数详解
2016/11/20 PHP
laravel 解决groupBy时出现的错误 isn't in Group By问题
2019/10/17 PHP
基于jQuery实现的Ajax 验证用户名是否存在的实现代码
2011/04/06 Javascript
JavaScript实现拼音排序的方法
2012/11/20 Javascript
字段太多jquey快速清空表单内容方法
2014/08/21 Javascript
js计算德州扑克牌面值的方法
2015/03/04 Javascript
jQuery插件实现控制网页元素动态居中显示
2015/03/24 Javascript
js插件dropload上拉下滑加载数据实例解析
2016/07/27 Javascript
JS中作用域和变量提升(hoisting)的深入理解
2016/10/31 Javascript
bootstrap模态框消失问题的解决方法
2016/12/02 Javascript
Bootstrap学习笔记之环境配置(1)
2016/12/07 Javascript
Angular 4.x中表单Reactive Forms详解
2017/04/25 Javascript
Angular中$broadcast和$emit的使用方法详解
2017/05/22 Javascript
深入学习nodejs中的async模块的使用方法
2017/07/12 NodeJs
React Native 使用Fetch发送网络请求的示例代码
2017/12/02 Javascript
JavaScript事件对象event用法分析
2018/07/27 Javascript
使用jquery的cookie实现登录页记住用户名和密码的方法
2019/03/13 jQuery
js的新生代垃圾回收知识点总结
2019/08/22 Javascript
JS回调函数深入理解
2019/10/16 Javascript
浅谈Vue使用Elementui修改默认的最快方法
2020/12/05 Vue.js
Vue 事件的$event参数=事件的值案例
2021/01/29 Vue.js
mac PyCharm添加Python解释器及添加package路径的方法
2018/10/29 Python
python 阶乘累加和的实例
2019/02/01 Python
简单易懂Pytorch实战实例VGG深度网络
2019/08/27 Python
Python(PyS60)实现简单语音整点报时
2019/11/18 Python
Python高级编程之继承问题详解(super与mro)
2019/11/19 Python
Python实现打印实心和空心菱形
2019/11/23 Python
html5 canvas里绘制椭圆并保持线条粗细均匀的技巧
2013/03/25 HTML / CSS
蔻驰意大利官网:COACH意大利
2019/01/16 全球购物
通息工程毕业生自荐信
2013/10/16 职场文书
毕业生的自我鉴定
2013/10/29 职场文书
三严三实对照检查材料思想汇报
2014/09/28 职场文书
《火烧云》教学反思
2016/02/23 职场文书
一行Python命令实现批量加水印
2022/04/07 Python