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 HotKeys轻松搞定键盘事件代码
Aug 30 Javascript
鼠标经过的文本框textbox变色
May 21 Javascript
formvalidator验证插件中有关ajax验证问题
Jan 04 Javascript
javascript中不等于的代码是什么怎么写
Dec 29 Javascript
javasciprt下jquery函数$.post执行无响应的解决方法
Mar 13 Javascript
JavaScript常用脚本汇总(二)
Mar 04 Javascript
基于JavaScript实现移动端点击图片查看大图点击大图隐藏
Nov 04 Javascript
JQuery实现网页右侧随动广告特效
Jan 17 Javascript
iscroll动态加载数据完美解决方法
Jul 18 Javascript
使用vue如何构建一个自动建站项目
Feb 05 Javascript
vue项目中仿element-ui弹框效果的实例代码
Apr 22 Javascript
axios如何取消重复无用的请求详解
Dec 15 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分页显示制作详细讲解
2006/10/09 PHP
php和js如何通过json互相传递数据相关问题探讨
2013/02/26 PHP
Ajax实现对静态页面的文章访问统计功能示例
2016/10/10 PHP
php封装的表单验证类完整实例
2016/10/19 PHP
Yii框架批量插入数据扩展类的简单实现方法
2017/05/23 PHP
php设计模式之原型模式分析【星际争霸游戏案例】
2020/03/23 PHP
学习YUI.Ext 第二天
2007/03/10 Javascript
利用javaScript实现点击输入框弹出窗体选择信息
2013/12/11 Javascript
JS实现网页背景颜色与select框中颜色同时变化的方法
2015/02/27 Javascript
javascript实现简单的分页特效
2015/08/12 Javascript
整理Javascript函数学习笔记
2015/12/01 Javascript
javascript返回顶部的按钮实现方法
2016/01/09 Javascript
JS实现回到页面顶部动画效果的简单实例
2016/05/24 Javascript
AngularJS 教程及实例代码
2017/10/23 Javascript
原生实现一个react-redux的代码示例
2018/06/08 Javascript
JS前端知识点总结之内置对象,日期对象和定时器相关操作
2019/07/05 Javascript
JS通用方法触发点击事件代码实例
2020/02/17 Javascript
[54:08]LGD女子刀塔学院 DOTA2炼金术士教学
2014/01/09 DOTA
python获取当前计算机cpu数量的方法
2015/04/18 Python
Python中Django框架下的staticfiles使用简介
2015/05/30 Python
深入解析Python中的集合类型操作符
2015/08/19 Python
Python虚拟环境项目实例
2017/11/20 Python
PyQt5主窗口动态加载Widget实例代码
2018/02/07 Python
python实现计数排序与桶排序实例代码
2019/03/28 Python
Python PIL库图片灰化处理
2020/04/07 Python
tensorflow基于CNN实战mnist手写识别(小白必看)
2020/07/20 Python
浅谈CSS3 动画卡顿解决方案
2019/01/02 HTML / CSS
Raffaello Network西班牙:意大利拉斐尔时尚购物网
2019/03/12 全球购物
新浪网技术部笔试题
2016/08/26 面试题
中科前程Java笔试题
2016/11/20 面试题
营销总监岗位职责范本
2014/02/26 职场文书
管理标语大全
2014/06/24 职场文书
2016简历自荐信优秀范文
2016/01/29 职场文书
公司与个人合作协议书
2016/03/19 职场文书
Python按顺序遍历并读取文件夹中文件
2022/04/29 Python
微信小程序纯CSS实现无限弹幕滚动效果
2022/09/23 HTML / CSS