ECMAScript中没有提供类和接口等的定义,但它却是一门面向对象的语言,由于它能够通过其它
方式实现类似高级语言的面向对象功能,这些内容将在后面的文章中进行一步步的总结。此篇仅对JS中对象作简要说明,重点汇总一些类似于对象的数组的经常用法。

对象

创建

上篇提到创建对象的两种方式:

使用new运算符创建Object

var obj = new Object();

使用字面量方式创建

var  
obj = {};

这里值得注意的是在使用字面量(常量)创建Object时不会调用构造函数。

属性和方法

加入:

使用new创建后的加入方式

obj.name = '张三'

obj.run =function(){

return'';

}

使用字面量创建方式

var obj = {

name : '张三';

run : function(){

return '';

}

};

注意点:使用数组方式也可进行属性的输出obj['name'];使用deletekeyword可进行对象属性的删除

数组

Array类型与Object一样,相同是引用类型,而ESMAScript中的数组不同于其它语言中的数组,当中元素能够保存不论什么类型,该差别源于ESMAScript的变量类型松散性。

创建(与Object类型类似,数组的创建分为两种方式)

使用newkeyword

var arr = new Array();

var   arr = new Array(10);

var arr =new Array('张三','李四','王五');

使用字面量

var arr = [];

var  arr = ['张三','李四','王五'];

使用

使用下标进行读取

alert(arr[2]);        //输出'王五'

使用length属性获取数组元素个数

内置方法

转换

toString()、valueOf()、toLocaleString()

三个方法会返回同样的值,输出对象或数组信息时为默认调用方法

数组分隔符设置方法,默觉得','如需改动可调用join()方法

var  arr = ['张三','李四','王五'];

alert(arr.join('|'));            //输出张三|李四|王五

栈、队列(数组)

push()/pop()

push()/shift()

类似于栈、队列对数组元素进行的操作,与shift()相应的另外一方法是unshift(),为数组前端加入元素。须要说明的是加入元素的方法会返回数组长度,删除元素的方法会返回删除的元素。

重排序

逆序reverse()、正序sort()

小结:

不得不说,ECMAScript为数组提供了非常多方法,这些也仅仅有到以后的实践中逐步应用与探索了。

JS学习笔记-数组的更多相关文章

  1. js学习笔记——数组方法

    join() 把数组中所有元素转化为字符串并连接起来,并返回该字符串, var arr=[1,2,3]; var str=arr.join("#"); //str="1# ...

  2. 【学习】js学习笔记---数组对象

    一.属性 length 数组的大小.数组的length属性总是比数组中定义的最后一个元素的下标大一,设置属性length的值可以改变数组的大小.如果设置的值比它的当前值小,数组将被截断,其尾部的元素将 ...

  3. JS学习笔记——数组去重

    <script type="text/javascript"> //indexOf"是ECMAScript5方法,IE8以下不支持,需多写兼容低版本浏览器代码 ...

  4. vue.js 学习笔记3——TypeScript

    目录 vue.js 学习笔记3--TypeScript 工具 基础类型 数组 元组 枚举 字面量 接口 类类型 类类型要素 函数 函数参数 this对象和类型 重载 迭代器 Symbol.iterat ...

  5. 2019-4-29 js学习笔记

    js学习笔记一:js数据类型   1:基本数据类型       number类型(整数,小数)      String类型          boolean类型        NaN类型其实是一个nu ...

  6. 基于jquery的插件turn.js学习笔记

    基于jquery的插件turn.js学习笔记 简介 turn.js是一个可以实现3d书籍展示效果的jq插件,使用html5和css3来执行效果.可以很好的适应于ios和安卓等触摸设备. How it ...

  7. 【转】Backbone.js学习笔记(二)细说MVC

    文章转自: http://segmentfault.com/a/1190000002666658 对于初学backbone.js的同学可以先参考我这篇文章:Backbone.js学习笔记(一) Bac ...

  8. Node.js学习笔记(2):基本模块

    Node.js学习笔记(2):基本模块 模块 引入模块 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式.在No ...

  9. WebGL three.js学习笔记 加载外部模型以及Tween.js动画

    WebGL three.js学习笔记 加载外部模型以及Tween.js动画 本文的程序实现了加载外部stl格式的模型,以及学习了如何把加载的模型变为一个粒子系统,并使用Tween.js对该粒子系统进行 ...

随机推荐

  1. 漫话Unity3D(一)

    前言 使用Unity已经有将近半年时间了,尽管项目还仅仅是个半成品,可是Unity差点儿相同玩熟了.这里把使用过程中碰到的问题梳理一遍.不会涉及到太过详细的功能和代码,可是假设开发一个网游又都会涉及到 ...

  2. XMPP通讯开发-服务器好友获取以及监听状态变化

    在 XMPP通讯开发-好友获取界面设计   我们设计了放QQ的列表功能,这里我们获取我们服务器上的 数据. 这一部分知识我们可以查看smack_3_3_0/smack_3_3_0/documentat ...

  3. ARM指令集——数据处理指令

    ARM汇编指令集 ARM汇编文件的组成 指令:编译完成后作为一条指令(机器码)存储在内存单元中,CPU执行时能够完成处理的操作 伪指令:在编译时替换成能被识别的ARM指令 伪操作:知道编译器进行编译, ...

  4. C#Equal的使用

    代码如下: public partial class FramMain : Form { public FramMain() { InitializeComponent(); } private vo ...

  5. 批量SSH操作工具---OmniTTY安装

    安装rote # pwd /tmp/rote-0.2.8 # ./configure # make # make install ...... mkdir -p /usr/local/include/ ...

  6. DEV LookUpEdit 使用方法

    public class field { public string Name { get; set; } public string Explain { get; set; } } List< ...

  7. jQuery和DOM对象

    html示例 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset=" ...

  8. Python爬虫——抓取贴吧帖子

    抓取百度贴吧帖子 按照这个学习教程,一步一步写出来,中间遇到很多的问题,一一列举 首先, 获得 标题 和 贴子总数 # -*- coding:utf-8 -*- #!/user/bin/python ...

  9. 洛谷 P1066 2^k进制数

    P1066 2^k进制数 题目描述 设r是个2^k 进制数,并满足以下条件: (1)r至少是个2位的2^k 进制数. (2)作为2^k 进制数,除最后一位外,r的每一位严格小于它右边相邻的那一位. ( ...

  10. hadoop之MapReduce WordCount分析

    MapReduce的设计思想 主要的思想是分而治之(divide and conquer),分治算法. 将一个大的问题切分成很多小的问题,然后在集群中的各个节点上执行,这既是Map过程.在Map过程结 ...