JS学习笔记-数组
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学习笔记-数组的更多相关文章
- js学习笔记——数组方法
join() 把数组中所有元素转化为字符串并连接起来,并返回该字符串, var arr=[1,2,3]; var str=arr.join("#"); //str="1# ...
- 【学习】js学习笔记---数组对象
一.属性 length 数组的大小.数组的length属性总是比数组中定义的最后一个元素的下标大一,设置属性length的值可以改变数组的大小.如果设置的值比它的当前值小,数组将被截断,其尾部的元素将 ...
- JS学习笔记——数组去重
<script type="text/javascript"> //indexOf"是ECMAScript5方法,IE8以下不支持,需多写兼容低版本浏览器代码 ...
- vue.js 学习笔记3——TypeScript
目录 vue.js 学习笔记3--TypeScript 工具 基础类型 数组 元组 枚举 字面量 接口 类类型 类类型要素 函数 函数参数 this对象和类型 重载 迭代器 Symbol.iterat ...
- 2019-4-29 js学习笔记
js学习笔记一:js数据类型 1:基本数据类型 number类型(整数,小数) String类型 boolean类型 NaN类型其实是一个nu ...
- 基于jquery的插件turn.js学习笔记
基于jquery的插件turn.js学习笔记 简介 turn.js是一个可以实现3d书籍展示效果的jq插件,使用html5和css3来执行效果.可以很好的适应于ios和安卓等触摸设备. How it ...
- 【转】Backbone.js学习笔记(二)细说MVC
文章转自: http://segmentfault.com/a/1190000002666658 对于初学backbone.js的同学可以先参考我这篇文章:Backbone.js学习笔记(一) Bac ...
- Node.js学习笔记(2):基本模块
Node.js学习笔记(2):基本模块 模块 引入模块 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式.在No ...
- WebGL three.js学习笔记 加载外部模型以及Tween.js动画
WebGL three.js学习笔记 加载外部模型以及Tween.js动画 本文的程序实现了加载外部stl格式的模型,以及学习了如何把加载的模型变为一个粒子系统,并使用Tween.js对该粒子系统进行 ...
随机推荐
- LeetCode 58 Spiral Matrix II
Given an integer n, generate a square matrix filled with elements from 1 to n2 in spiral order. For ...
- 掌握jQuery插件开发,这篇文章就够了
---恢复内容开始--- 在实际开发工作中,总会碰到像滚动,分页,日历等展示效果的业务需求,对于接触过jQuery以及数据jQuery使用的人来说,首先想到的肯定是寻找现有的jQuery插件来满足形影 ...
- 关于IE11
最近,一个开发代号为Windows Blue的Windows操作系统泄漏到了互联网上,该操作系统的内置浏览器为IE11,本文将介绍一下这个泄漏版的IE11中有哪些关键的新变化和新特性. 预先声明: 本 ...
- StartService与BindService
效果图 MainActivity.java package com.wangzhen.servicedemo; import com.lidroid.xutils.ViewUtils; import ...
- BZOJ 3926 && ZJOI 2015 诸神眷顾的幻想乡 (广义后缀自动机)
3926: [Zjoi2015]诸神眷顾的幻想乡 Time Limit: 10 Sec Memory Limit: 512 MB Description 幽香是全幻想乡里最受人欢迎的萌妹子,这天,是幽 ...
- string 与char* char[]之间的转换
1.首先必须了解,string可以被看成是以字符为元素的一种容器.字符构成序列(字符串).有时候在字符序列中进行遍历,标准的string类提供了STL容器接口.具有一些成员函数比如begin().en ...
- centos中的配置文件
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置. /etc/bashrc:为每一个 ...
- css3实现各种渐变效果,比较适合做手机触屏版
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Python读入与写出中文时出现乱码
解决办法:重置sys模块,设置默认编码方式为utf-8. 在.py文件的开头添加下面两行代码: reload(sys) sys.setdefaultencoding('utf8')
- vim 多行注释
多行注释: 1. 进入命令行模式,按ctrl + v进入 visual block模式,然后按j, 或者k选中多行,把需要注释的行标记起来 2. 按大写字母I,再插入注释符,例如// 3. 按esc键 ...