什么是对象,其实就是一种类型,即引用类型。

一、创建Object类型有两种。

  ①使用new运算符

<script type="text/javascript">
var box = new Object();
box.name = '李四';
box.age = 28;
//new 关键字可以省略
var box = Object();
</script>

  ②字面量表示法(常用的方法)

<script type="text/javascript">
var box = {
name: '张三',
age:28
}; //使用字面量及传统赋值方式
var box={}; box.name = '张三',
box.age = 28;
</script>

二、两种属性输出方式

<script type="text/javascript">
alert(box.age);
alert(box['age']);
</script>

三、使用delete删除对象属性 

deletebox.name;

四、给对象创建方法

<script type="text/javascript">
var box = {
run: function(){
return '运行';
}
};
alert(box.run());
</script>
<script type="text/javascript">
//参数是一个对象
function box(obj){ //判断属性是否存在
if(obj.name != undefined) alert(obj.name);
if(obj.age != undefined) alert(obj.age);
} //调用函数传递一个对象
box({
name: '王五',
age: 24
});
</script>

五、数组

①创建Array类型有两种方式:

  1>.第一种是new运算符(可以省略new) 

<script type="text/javascript">

    //创建了一个数组
var box = new Array(); //创建一个包含10个元素的数组
var box = new Array(10); //创建一个数组并分配好了元素
var box = new Array('占三', 28, '工人', '中国');
</script>

  2>.第二种是字面量。

<script type="text/javascript">
//创建一个空的数组
var box = [];
//创建包含元素的数组
var box = ['王五' ,30, '码农', '中国'];
//禁止这么做,IE会识别3个元素
var box = [1,2,];
//同样,IE的会有识别问题
var box = [,,,,,,]; //PS:和Object一样,字面量的写法不会调用Array()构造函数。(Firefox除外)。
</script>

  3>.使用索引下标来读取数组的值

<script type="text/javascript">
//获取元素个数
alert(box.length)
//强制元素个数
box.length=10;
//通过length给数组增加一个元素。
box[box.length]='JS 技术';
</script>

  4>.创建一个稍微复杂一点的数组

<script type="text/javascript">
var box=[
{ //第一个元素是一个对象
name:'李炎恢',
age:28,
run:function(){
return'run 了';
}
},
['马云','李彦宏',new Object()],//第二个元素是数组
'江苏', //第三个元素是字符串
25+25, //第四个元素是数值
new Array(1,2,3) //第五个元素是数组
];
alert(box);
</script>

PS:数组最多可包含4294967295个元素,超出即会发生异常。

2.重学javascript 对象和数组的更多相关文章

  1. 第一百零三节,JavaScript对象和数组

    JavaScript对象和数组 学习要点: 1.Object类型 2.Array类型 3.对象中的方法 什么是对象,其实就是一种类型,即引用类型.而对象的值就是引用类型的实例.在ECMAScript中 ...

  2. 【跟着大佬学JavaScript】之数组去重(结果对比)

    前言 数组去重在面试和工作中都是比较容易见到的问题. 这篇文章主要是来测试多个方法,对下面这个数组的去重结果进行分析讨论.如果有不对的地方,还请大家指出. const arr = [ 1, 1, &q ...

  3. JavaScript 对象与数组参考大全

    http://www.cnblogs.com/meil/archive/2006/06/28/437527.html本文列举了各种JavaScript对象与数组,同时包括对上述每一对象或数组所完成工作 ...

  4. JavaScript对象和数组

    1.JavaScript中有两个非常重要的数据类型是对象和数组. 通过"."或者"[]"来访问对象属性 举例:var book = { topic:" ...

  5. 简述JavaScript对象、数组对象与类数组对象

    问题引出 在上图给出的文档中,用JavaScript获取那个a标签,要用什么办法呢?相信第一反应一定是使用document.getElementsByTagName('a')[0]来获取.同样的,在使 ...

  6. javascript 对象和数组(花括号、方括号)

    1. javascript对象定义 var a = {var a = "test", var b = "test"} 2. javascript数组定义 var ...

  7. 重学JavaScript - 映射与集合

    作者:狐狸家的鱼 GitHub:surRimn 整理自MDN文档 带键的集合 映射 Map对象 一个Map对象在迭代时会根据对象中元素的插入顺序来进行 — 一个 for...of 循环在每次迭代后会返 ...

  8. 复习 Array,重学 JavaScript

    1 数组与对象 在 JavaScript 中,一个对象的键只能有两种类型:string 和 symbol.下文只考虑键为字符串的情况. 1.1 创建对象 在创建对象时,若对象的键为数字,或者由 字母+ ...

  9. JavaScript对象与数组

    一.Object 类型到目前为止,我们使用的引用类型最多的可能就是 Object 类型了.虽然 Object 的实例不具备多少功能,但对于在应用程序中的存储和传输数据而言,它确实是非常理想的选择.创建 ...

随机推荐

  1. beyond compare 比较Xls文件时只显示有差异的列

    beyond compare是专业级的文件比较工具,可以比较所有的文件格式,已经成为我工作中的必备软件 在某一个工作项目中需要比较两个Xls文件,两个文件列是相同的,主要是看两个文件的列内容有什么变化 ...

  2. Ext3.0中复杂表头样例

    注意要点:不出现滚动栏时要设置height和forceFit : false 效果例如以下图: this.columns = [{ header : '月份', dataIndex : '月份', w ...

  3. iOS XMPPFramework 环境配置

    iOS XMPPFramework 环境配置 1:下载 iOS XMPPFramework https://github.com/robbiehanson/XMPPFramework 2:下载解压zi ...

  4. Zabbix Server和MPM(monitor for mysql)的高速部署

    1. 前言         zabbix作为开源免费的监控软件.其易于管理配置和可视化的视图.历史数据的定期维护.模板化的监控项目越来越受到广大IT运维人员的喜爱. 这里主要是总结了下Zabbix S ...

  5. unity模型任意无限切割插件

    概述 3d模型的任意切割一直是游戏开发里的一个很大的问题,模型切割的关键点就只有生成横切面的新顶点以及切口纹理的缝合,理论上解决了这两点,就近乎可以做到以假乱真的程度了.本篇文章就这两点进行描述 详细 ...

  6. panel,dialog,window组件越界(超出范围)问题汇总

    参考地址 之前分别写过panel,dialog,window三个组件因为拖曳或者reSize造成组件越界而无法还原的问题,两篇文章分别针对拖曳和reSize给出了解决方案.不过根据朋友的反馈,reSi ...

  7. Tomcat中部署Java Web应用程序的方式

    Tomcat中部署Java Web应用程序的几种方式: #PetWeb是工程名 1.在TOMCAT_HOME\conf\server.xml文件的HOST节点中加入 <Context docBa ...

  8. FFMPEG音视频解码

    文章转自:https://www.cnblogs.com/CoderTian/p/6791638.html 1.播放多媒体文件步骤 通常情况下,我们下载的视频文件如MP4,MKV.FLV等都属于封装格 ...

  9. http跨域访问

    if (Request.Headers.Get("Origin") != null) { filterContext.HttpContext.Response.AddHeader( ...

  10. MySQL主从双向同步复制

    本文介绍了mysql主从,实现mysql的双向同步复制. MySQL支持单向.异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器.主服务器将更新写入二进制日志文件,并维护日 ...