JavaScript核心对象

  • 数组对象Array
  • 字符串对象String
  • 日期对象Date
  • 数学对象Math

数组对象

数组对象是用来在单一的变量名中存储一系列的值。数组是在编程语言中经常使用的一种数据结构,可以用来存储一系列的值,在JavaScript中同一数组中可以存储不同数据类型的数据。

1.创建数组

  • 创建一个大小为的数组

    var array = new Array();

  • 创建一个大小为size的数组

    var array = new Array(size);

  • 创建一个数组并赋值

    var array = new Array(elements0,element1,......);

2.访问数组

通过索引可以访问数组元素,索引值为0  ~(length-1),例如:

  var array = new Array(2,3,5);

  dcoument.write(array[1]);  //输出的结果为3

3.数组的属性

  • length属性  

    length属性表示数组的长度,即数组中包含的元素个数。

  例如:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>length</title>
<script language="JavaScript"> var array = new Array("A","B","C","D");
document.write("初始的数组元素为:");
printarray(array);
array.length = 7;
document.write("length变大的数组元素为:");
printarray(array);
array.length = 3;
document.write("length变小的数组元素为:");
printarray(array);
document.write("arry[5]="+arry[5]);
function printarray(array) {
for (var i = 0;i<array.length;i++){
document.write(array[i]+"&nbsp");
}
document.write("<br>"); } </script>
</head>
<body> </body>
</html>
  • prototype属性

    prototype属性是所有JavaScript对象所共有的属性,用于将新定义的属性或者方法添加到对象中,对象的实例可以调用添加的方法或者属性。

  语法:

    Array.prototype.methodName = functionName;

    或者

    Array.prototype.methodName = functionName([param1],[param2]…){

      statem;

    }

  例如:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>length</title>
<script language="JavaScript">
function array_max() {
var i,max=this[0];
for(i=1;i<this.length;i++){
if(max<this[i]){
max=this[i];
}
}
return max; }
function array_print() {
for (var i=0;i<this.length;i++){
document.write(this[i]+"&nbsp;");
}
document.write("<br>");
}
Array.prototype.max = array_max;
Array.prototype.print = array_print;
var array = new Array(32,8,-12,156,78);
document.write("数组的值为:");
array.print();
document.write("数组中最大的元素值为:"+array.max()); </script>
</head>
<body> </body>
</html>
  • constructor属性

    constructor属性用于返回对创建对象的数组函数的引用。

  例如:

  

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>constructor</title>
<script>
var a = new Array();
if (a.constructor = array){
document.write("array is Array");
}
else if (a.constructor = Boolean){
document.write("a is Boolean");
}
</script>
</head>
<body> </body>
</html>

4.数组的方法

方法 描述
concat() 连接两个或更多的数组,并返回结果。
join() 把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。
pop() 删除并返回数组的最后一个元素
push() 向数组的末尾添加一个或更多元素,并返回新的长度。
reverse() 颠倒数组中元素的顺序。
shift() 删除并返回数组的第一个元素
slice() 从某个已有的数组返回选定的元素
sort() 对数组的元素进行排序
splice() 删除元素,并向数组添加新元素。
toSource() 返回该对象的源代码。
toString() 把数组转换为字符串,并返回结果。
toLocaleString() 把数组转换为本地数组,并返回结果。
unshift() 向数组的开头添加一个或更多元素,并返回新的长度。
valueOf() 返回数组对象的原始值

 

特此声明:如需转载请注明出处,如有疑问请及时提出以便于改正,如有侵权,联系删除,谢谢

Javascript 对象 - 数组对象的更多相关文章

  1. javascript之数组对象与数组常用方法

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. 不可或缺 Windows Native (18) - C++: this 指针, 对象数组, 对象和指针, const 对象, const 指针和指向 const 对象的指针, const 对象的引用

    [源码下载] 不可或缺 Windows Native (18) - C++: this 指针, 对象数组, 对象和指针, const 对象,  const 指针和指向 const 对象的指针, con ...

  3. javascript变量 数组 对象

    一 变量 1.全局变量和局部变量 在JavaScript中同一个变量可以反复赋值,而且可以是不同类型的变量,但是要注意只能用var声明一次.这种变量类型不固定的语言称为动态语言,与之对应的静态语言,如 ...

  4. JavaScript类数组对象参考

    JavaScript和DOM中有很多类数组对象,它们有以下特点 1.有length属性 2.可以使用[]通过下标访问 3.部分类数组对象使用[]访问成员时不只可以使用下标,还可以使用id或name 4 ...

  5. javascript 类数组对象

    原文:https://segmentfault.com/a/1190000000415572 定义: 拥有length属性,其他属性(索引)为非负整数(对象中的所有会被当做字符串来处理,这里你可以当做 ...

  6. JavaScript 浅析数组对象与类数组对象

    数组(Array对象) 数组的操作 创建数组方法 添加与修改数组元素 删除数组元素 使用数组元素 遍历数组元素 多维数组 数组相关的函数 concat() join() pop() push() sh ...

  7. JavaScript之数组对象

    Array类型是ECMAScript中最常用的类型了. 一.声明方式 1.使用Array构造函数 var arr1 = new Array(); 如果预先知道要保存数组的数量, 也可以给构造函数传递该 ...

  8. 在Javascript中数组对象(json)里元素相同的操作

    1.数组对象元素相同,分组显示   let arry = [ { expensedate: '2018/09/29', amount: 1, type: '交通费' }, { expensedate: ...

  9. JavaScript中数组对象详解

    Array对象即数组对象用于在单个变量中存储多个值,JS的数组是弱类型的,所以允许数组中含有不同类型的元素,数组元素甚至可以是对象或者其他数组. 创建数组的语法 1.Array构造器 1.var li ...

随机推荐

  1. 【Spark调优】Kryo序列化

    [Java序列化与反序列化] Java序列化是指把Java对象转换为字节序列的过程:而Java反序列化是指把字节序列恢复为Java对象的过程.序列化使用场景:1.数据的持久化,通过序列化可以把数据永久 ...

  2. [原创]K8Cscan插件之Web主机扫描(存活主机、机器名、Banner、标题)

    [原创]K8 Cscan 大型内网渗透自定义扫描器 https://www.cnblogs.com/k8gege/p/10519321.html Cscan简介:何为自定义扫描器?其实也是插件化,但C ...

  3. 《CLR Via C#》读书笔记:26.线程基础

    一.线程开销 操作系统创建线程是有代价的,其主要开销在下面列举出来了. 内存开销 线程内核对象 拥有线程描述属性与线程上下文,线程上下文占用的内存空间为 x86 架构 占用 700 字节.x64 架构 ...

  4. npm包实现发布正式和测试版

    npm publish的時候 怎麽發測試版和正式版本呢? 通常我們一般情況下 直接 npm publish 提交自己的開發包后,在項目中 npm install @packageName 是下載下來剛 ...

  5. 微服务架构下分布式事务解决方案——阿里GTS

    1 微服务的发展 微服务倡导将复杂的单体应用拆分为若干个功能简单.松耦合的服务,这样可以降低开发难度.增强扩展性.便于敏捷开发.当前被越来越多的开发者推崇,很多互联网行业巨头.开源社区等都开始了微服务 ...

  6. 菜鸟系列docker——docker镜像下(5)

    1. docker镜像构建 该章节主要介绍2种构建docker镜像的方式.当然,当前基本上需要的基础镜像都有,直接使用即可.例如数据库.中间件之类的,只需要拿来使用即可,但是依然存在需要开发者构建镜像 ...

  7. PCA实现教程

    数据是机器学习模型的生命燃料.对于特定的问题,总有很多机器学习技术可供选择,但如果没有很多好的数据,问题将不能很好的解决.数据通常是大部分机器学习应用程序中性能提升背后的驱动因素. 有时,数据可能很复 ...

  8. lucene实战--打分算法没有那么难!

    作为一个开放源代码项目,Lucene从问世之后,引发了开放源代码社群的巨大反响,程序员们不仅使用它构建具体的全文检索应用,而且将之集成到各种系统软件中去,以及构建Web应用,甚至某些商业软件也采用了L ...

  9. 微信分享JS-SDK

    微信JS-SDK,提供给开发者的基于微信内的网页开发工具包 使用微信JS-SDK,网页开发者可借助微信高效地使用拍照.选图.语音.位置等手机系统的能力,同时可以直接使用微信分享.扫一扫.卡券.支付等微 ...

  10. Linux下的java虚拟机性能监控与故障处理命令

    java包中提供了很多监控JVM的工具类,作为java程序员必须得掌握常用的几个工具,下面是几个常用的JVM性能监控与故障处理工具的介绍与使用. 1.jstack 该命令用于生成当前时刻虚拟机的线程快 ...