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禁用浏览器退格键实现思路及代码
Oct 29 Javascript
js 通用订单代码
Dec 23 Javascript
JQuery实现左右滚动菜单特效
Sep 28 Javascript
jQuery遍历DOM元素与节点方法详解
Apr 14 Javascript
第二次聊一聊JS require.js模块化工具的基础知识
Apr 17 Javascript
JS清除字符串中重复值的实现方法
Aug 03 Javascript
基于jQuery实现歌词滚动版音乐播放器的代码
Sep 17 Javascript
关于javascript sort()排序你可能忽略的一点理解
Jul 18 Javascript
JS执行控制之节流模式实例分析
Dec 21 Javascript
实现高性能javascript的注意事项
May 27 Javascript
优雅的使用javascript递归画一棵结构树示例代码
Sep 22 Javascript
JavaScript架构搭建前端监控如何采集异常数据
Jun 25 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
PHP查找与搜索数组元素方法总结
2015/06/12 PHP
PHP实现对xml进行简单的增删改查(CRUD)操作示例
2017/05/19 PHP
KindEditor在php环境下上传图片功能集成的方法示例
2020/07/20 PHP
JQuery 构建客户/服务分离的链接模型中Table中的排序分析
2010/01/22 Javascript
js猜数字小游戏的简单实现代码
2013/07/02 Javascript
jquery和javascript的区别(常用方法比较)
2013/07/04 Javascript
Nodejs为什么选择javascript为载体语言
2015/01/13 NodeJs
JavaScript取得WEB安全颜色列表的方法
2015/07/14 Javascript
全面解析Bootstrap表单使用方法(表单按钮)
2015/11/24 Javascript
JS实现CheckBox复选框全选、不选或全不选功能
2020/07/28 Javascript
JavaScript 基础函数_深入剖析变量和作用域
2016/05/18 Javascript
微信小程序 MD5加密登录密码详解及实例代码
2017/01/12 Javascript
纯js实现html转pdf的简单实例(推荐)
2017/02/16 Javascript
JS中SetTimeout和SetInterval使用初探
2017/03/23 Javascript
VueJs监听window.resize方法示例
2018/01/17 Javascript
Node.js Buffer模块功能及常用方法实例分析
2019/01/05 Javascript
vue-cli3使用 DllPlugin 实现预编译提升构建速度
2019/04/24 Javascript
微信小程序 网络通信实现详解
2019/07/23 Javascript
Selenium执行JavaScript脚本的方法示例
2020/12/31 Javascript
Python连接mssql数据库编码问题解决方法
2015/01/01 Python
python实现逆波兰计算表达式实例详解
2015/05/06 Python
Python批量更改文件名的实现方法
2017/10/29 Python
利用Python如何批量更新服务器文件
2018/07/29 Python
Python中的单下划线和双下划线使用场景详解
2019/09/09 Python
Python 实现自动导入缺失的库
2019/10/29 Python
Pytorch之卷积层的使用详解
2019/12/31 Python
Python基于Faker假数据构造库
2020/11/30 Python
html5 canvas 简单画板实现代码
2012/01/05 HTML / CSS
详解HTML5中download属性的应用
2015/08/06 HTML / CSS
幼儿园教师国培感言
2014/02/02 职场文书
三八妇女节超市活动方案
2014/08/18 职场文书
教师党员学习十八届四中全会思想汇报
2014/11/03 职场文书
呼兰河传读书笔记
2015/06/30 职场文书
2016年小学生寒假家长评语
2015/10/10 职场文书
数据库连接池
2021/04/06 MySQL
分析MySQL优化 index merge 后引起的死锁
2022/04/19 MySQL