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 相关文章推荐
从jQuery.camelCase()学习string.replace() 函数学习
Sep 13 Javascript
JavaScript 模拟类机制及私有变量的方法及思路
Jul 10 Javascript
javascript中offset、client、scroll的属性总结
Aug 13 Javascript
js+html5实现canvas绘制网页时钟的方法
May 21 Javascript
微信小程序 textarea 详解及简单使用方法
Dec 05 Javascript
图解Javascript——作用域、作用域链、闭包
Mar 21 Javascript
ES6中Math对象新增的方法实例详解
Apr 25 Javascript
Node.js使用gm拼装sprite图片
Jul 04 Javascript
vue-cli2.9.3 详细教程
Apr 23 Javascript
Nuxt升级2.0.0时出现的问题(小结)
Oct 08 Javascript
layui实现下拉框三级联动
Jul 26 Javascript
element 中 el-menu 组件的无限极循环思路代码详解
Apr 26 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
索尼ICF-SW100收音机评测
2021/03/02 无线电
PHP初学者头疼问题总结
2006/07/08 PHP
网页游戏开发入门教程二(游戏模式+系统)
2009/11/02 PHP
php去除字符串中空字符的常用方法小结
2015/03/17 PHP
php删除指定目录的方法
2015/04/03 PHP
PHP的Laravel框架中使用消息队列queue及异步队列的方法
2016/03/21 PHP
PHP读书笔记_运算符详解
2016/07/01 PHP
yii2.0框架数据库操作简单示例【添加,修改,删除,查询,打印等】
2020/04/13 PHP
dojo 之基础篇(三)之向服务器发送数据
2007/03/24 Javascript
javascript生成随机数的方法
2014/05/16 Javascript
在JavaScript中使用NaN值的方法
2015/06/05 Javascript
JQuery包裹DOM节点的方法
2015/06/11 Javascript
js变形金刚文字特效代码分享
2015/08/20 Javascript
javascript字符串替换函数如何一次性全部替换掉
2015/10/30 Javascript
jquery+json实现分页效果
2016/03/07 Javascript
javascript验证香港身份证的格式或真实性
2017/02/07 Javascript
javascript定时器取消定时器及优化方法
2017/07/08 Javascript
Vue.extend构造器的详解
2017/07/17 Javascript
React Native 使用Fetch发送网络请求的示例代码
2017/12/02 Javascript
微信小程序tabBar用法实例详解
2017/12/04 Javascript
解决vue+router路由跳转不起作用的一项原因
2020/07/19 Javascript
web.py在SAE中的Session问题解决方法(使用mysql存储)
2015/06/24 Python
python中requests爬去网页内容出现乱码问题解决方法介绍
2017/10/25 Python
python调用Delphi写的Dll代码示例
2017/12/05 Python
Python实现获取邮箱内容并解析的方法示例
2018/06/16 Python
Python实现的微信好友数据分析功能示例
2018/06/21 Python
使用WingPro 7 设置Python路径的方法
2019/07/24 Python
解决windows上安装tensorflow时报错,“DLL load failed: 找不到指定的模块”的问题
2020/05/20 Python
如何用用Python将地址标记在地图上
2021/02/07 Python
浅析rem和em和px vh vw和% 移动端长度单位
2016/04/28 HTML / CSS
最新的小工具和卓越的产品设计:Oh That Tech!
2019/08/07 全球购物
八一演出活动方案
2014/02/03 职场文书
酒店餐厅2014重阳节活动策划方案
2014/09/16 职场文书
人事行政主管岗位职责
2015/04/09 职场文书
德劲DE1102数字调谐收音机机评
2022/04/07 无线电
JS轻量级函数式编程实现XDM三
2022/06/16 Javascript