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. Android Dependencies小差号引起的问题

    问题是由于Android Dependencies小差号引起的,下午一搞Android的哥们在群里说最近导入的几个工程每个都是Android Dependencies报错,小差号,我先说解决方法: 方 ...

  2. [置顶] iOS 应用程序内部国际化,不跟随系统语言

    前言:网络上关于iOS国际化的文章很多,但基本上都是基于跟随系统语言的国际化,笔者就不赘述了-0 – 今天要讲的是不跟随系统的切换语言版本方案,即程序内部的切换语言版本方案. 一.总则: 应用内部语言 ...

  3. [置顶] Android安全机制分析

    Android系统是基于Linux内核开发的,因此,Android系统不仅保留和继承了Linux操作系统的安全机制,而且其系统架构的各个层次都有独特的安全特性[2] . 1. Linux内核层安全机制 ...

  4. sdut2623--The number of steps(概率dp第一弹,求期望)

    The number of steps Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^ 题目描写叙述 Mary stands in a st ...

  5. Dynamics CRM 常用 JS 方法集合

    JS部分 拿到字段的值 var value= Xrm.Page.getAttribute("attributename").getValue(); Xrm.Page.getAttr ...

  6. 关于IE11

    最近,一个开发代号为Windows Blue的Windows操作系统泄漏到了互联网上,该操作系统的内置浏览器为IE11,本文将介绍一下这个泄漏版的IE11中有哪些关键的新变化和新特性. 预先声明: 本 ...

  7. Server.HTMLEncode用法

    Server.HTMLEncode用法!! Server.HTMLEncode HTMLEncode 一.HTMLEncode 方法对指定的字符串应用 HTML 编码. 语法 Server.HTMLE ...

  8. python3.5读取网页代码,并保存

    在旧版的python中有个urllib模块,内有一个urlopen方法可打开网页,但新版python中没有了,新版的urllib模块里面只有4个子模块(error,request,response,p ...

  9. 接入SDK

    管理提醒: 本帖被 fm2010 设置为精华(2014-11-12) http://www.cocoachina.com/bbs/read.php?tid-239087.html     本帖属于Co ...

  10. 异步编程设计模式 - IronPythonDebugger

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsof ...