简单的计算机程序代码,优秀程序员通过简单代码,窥探电脑编程中强大的数组操作功能...

优秀程序员通过简单代码,窥探电脑编程中强大的数组操作功能。编程语言中,数组是一个非常重要的概念,也是一种很常用的类型。本文中通过javascript语言的代码实例,展现编程中数组的魅力。在javascript语言中,数组Array类型是一种引用类型,可以保存任何数据类型的数据。如字符串,数值,对象等。

97149d77882aac148a7e77cf265fa3e1.png图A 创建数组

如图A,通过构造函数Array()传入不同的参数创建不同的新数组。当传入的参数为空时,创建length长度为零的空数组testArray_a;当传入的参数为数值5时,创建了一个length长度为5的空数组testArray_b,数组中的5个数据项均为undefined;当传入的参数为字符串a,b,c,d,e时,新数组testArray_c被创建,此时该数组的length长度为5,各数据项为a,b,c,d,e。利用构造函数构建新数组,只是创建数组的一种方式,还有一种比较常见的方式为数组字面量。在编程中,数组是可以通过索引进行操作的。

a43468426ed0c5b134baf6e48cce926d.png图B 索引特定数据项

如图B,通过数组的索引对数组进行特定数据项的替换,添加。通过操作符new加构造函数Array(),创建名为testArray_c的数组,该数组中的数据项为a,b,c,d,e,length长度为5。testArray_c[4]="f";将第五个数据项e替换为f,返回新数组:a,b,c,d,f;testArray_c[5]="G";在位置5添加数据项六G;返回新数组:a,b,c,d,f,G,length长度为6;给原数组添加数据项可以是任何位置的添加。数据项间没有数据的位置,都是undefined项。testArray_c[10]="M";在位置10添加数据项“M”,返回新数组:a,b,c,d,f,G,undefined,undefined,undefined,undefined,M,length长度为10;

f4ea0192f3a75935b331487558a143d1.png图C 末尾添加

如图C,数组中,最后一个数据项的索引总是为length-1,所以,下个数据项的索引即为length。利用这个特性,可以很方便的为某个数组在末尾添加数据项。testArray_c.length="Z";在数组testArray_c末尾添加Z;testArray_c.length="X",末尾加X;经过两次操作,返回的新数组为:a,b,c,d,e,Z,X。以此类推,可以添加末尾数据项的任意个数。

a7af5d14ad6609d8562f8213360c6a42.png图D splice()方法插入 替换 删除

如图C,通过方法splice()对数组进行操作,其功能可有删除数据项,插入数据项,替换数据项。删除操作:var testArray_c1=testArray_c.splice(1,2);从位置1开始删除2个数据项;console.log(testArray_c1);返回删除的数据项b,c; console.log(testArray_c);返回删除后的新数组a,d,e;插入操作:var testArray_c2=testArray_c.splice(2,0,"8","9");从位置2开始插入8,9两项,变成新数组a,d,8,9,e。

3ff6068ebbf6617e34388b10126336fc.png图E splice()方法执行结果

替换数据项操作:var testArray_c3=testArray_c.splice(1,3,"X","Y","Z");从位置1开始,删除3个数据项,后在删除的位置上添加X,Y,Z;console.log(testArray_c3);返回删除项d,8,9;console.log(testArray_c); 返回新数组a,X,Y,Z,e;如图E为 splice()方法执行结果。在数组操作中,splice()方法是非常强大的,可以很方便的操作数组。一种编程语言,如果没有数组这种数据结构会是什么样的呢?会不会有更好的数据结构来代替数组?

举报/反馈

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/334099.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java 示例_功能Java示例 第3部分–不要使用异常来控制流程

java 示例这是称为“ Functional Java by Example”的系列文章的第3部分。 我在本系列的每个部分中开发的示例是某种“提要处理程序”,用于处理文档。 在前面的部分中,我从一些原始代码开始,并应用了一些重构来描述“什么”而不是“如何”。…

Linux 命令之 gzip -- 压缩和解压文件

文章目录一、命令介绍二、常用选项三、命令示例(一)将指定目录下的每个文件压缩成 .gz 文件(二)解压指定目录下的每个压缩文件(三)显示指定目录下每个压缩文件的信息,并不解压(四&am…

python读取tiff数据_opencv-python读取tiff影像,并展示

pencv-python可以读取各类图片,然后对图像进行处理,结合矩阵操作,可以非常方便的对图像进行各类操作,下面就展示一个简单的demo,用opencv-python读取图像并展示出来。Opencv的库安装可能比较麻烦一点。# 导入cv模块imp…

win7 计算机定时关机脚本,win7怎么定时关机?win7定时关机设置两种方法

当我们在操作电脑的时候,有时会有需要定时关机,或者不在电脑前操作是需要过段时间自动关机,但是Win7系统没有自带的定时关机软件,很多电脑用户又不喜欢安装第三方软件来完成该操作。那么win7怎么定时关机?本文为大家介…

Linux 命令之 gunzip -- 用来解压缩文件

文章目录一、命令介绍二、常用选项三、命令示例(一)解压文件,删除原文件(二)解压文件,并保留原文件(三)解压文件到其它目录下(四)指定后缀名来解压文件一、命…

java面试spring_针对Java程序员的二十大Spring REST面试问题答案

java面试spring大家好,过去两周来,我一直在与Spring教程共享一些REST,今天,我将向申请Web开发人员角色的Java开发人员共享一些常见的Spring和REST采访问题。 由于Spring Framework是用于开发Java Web应用程序和RESTful Web Servic…

socket python实例_Python网络编程—第27课—Socket实例(0531)

一、创建套接字示例(服务端)import socket #导入模块import time #导入模块s socket.socket(socket.AF_INET, socket.SOCK_STREAM) #创建TCP套接字address (127.0.0.1, 8888)s.bind(address) #为TCP套接字绑定IP及端口s.listen(10) #启动TCP监听,同时接受10个sock…

Linux 命令之 bzip2 -- bz2文件的压缩程序

文章目录一、命令介绍二、常用选项三、命令示例(一)压缩指定文件(二)压缩指定目录下的文件(三)解压指定的文件一、命令介绍 Linux 系统中命令 bzip2 的英文是“bunzip2”,即.bz2 文件格式的压缩…

错误计算机怎么打开,电脑开机出错怎么回事

开机后出现这个错误,有没有大神教一下怎么办[Window Title]Error[Main Instruction]A JavaScript error occurred in the main process[Content]Uncaught Exception:Error: Unable to find a valid appat Object. (C:\Program Files (x86)\Thunder Network\Thunder\…

springboot jwt token前后端分离_「转」七个开源的 Spring Boot 前后端分离项目,建议收藏加转载...

其实前后端分离本身并不难,后段提供接口,前端做数据展示,关键是这种思想。很多人做惯了前后端不分的开发,在做前后端分离的时候,很容易带进来一些前后端不分时候的开发思路,结果做出来的产品不伦不类&#…

基于Spring Boot配置文件的日志记录示例样本

我们希望在Spring Boot中为不同的配置文件使用不同的日志记录配置,例如在本地运行中,我们只希望控制台日志记录和用于生产,我们希望文件记录日志支持每天滚动日志文件。 我想出了一个示例logback配置,该配置将在所有应用程序中使…

Linux 命令之 bunzip2 -- bz2 文件的解压缩程序

文章目录一、命令介绍二、常用选项三、命令示例(一)解压 .bz2 文件一、命令介绍 bunzip2 可解压缩 .bz2 格式的压缩文件。bunzip2 其实是 bzip2 的符号链接,即软链接,因此压缩解压都可以通过 bzip2 实现。执行bunzip2 与 bzip2 -…

联想办公计算机,办公娱乐两不误!联想这些笔记本电脑不容错过

【PConline 海选导购】随着技术的进步,如今的笔记本电脑性能越来越强,尤其是笔记本电脑携带更加方便,可以让你摆脱使用场景的限制,能随时随地畅玩游戏或者进行日常办公,有着台式机无可比拟的优势,因此&…

python email模块写邮件_python常用模块email----创建简单的文本邮件并发送

email模块可以方便的用来构造邮件,今天我们通过一个简单的例子来实现文本邮件的构造的发送。先将要发送的内容写在文件里面:cat /tmp/email_test.txthello there!i love python!编写如下脚本:cat test.py#!/usr/bin/python#codingutf-8import…

java私有属性和私有方法_Java接口–历年来Java 9之旅–默认方法和私有方法

java私有属性和私有方法介绍 Java接口已经比Java版本进行了更多的演变,而Java 8和Java 9则有所发展。在本文中,我们将介绍接口在Java 8之前的样子以及如何在Java 8和Java 9中得到增强。 Java 8之前的接口 接口将具有一个或多个抽象方法,如下…

Linux 命令行中的文件名/文件路径中使用通配符的说明

文章目录支持通配符通配符表达式示例通配符使用限制使用通配符表示的路径示例带有空格的通配符或文件名必须加上引号支持通配符 * 表示任意数量的任意字符? 表示任意单个字符 通配符表达式示例 *.txt:这样会查找(添加、选定……)所有扩展名是“.txt”的文件?a*…

ftp主要完成与远程计算机的连接,2015计算机三级《网络技术》复习重点:远程登录服务和FTP服务...

2015计算机三级《网络技术》复习重点:远程登录服务和FTP服务一、远程登录服务(TCP连接)(TCP的23端口服务)1、远程登录协议用户使用Telnet命令,使自己的计算机成为远程计算机的一台仿真终端。远程登录允许任意类型的计算机之间进行通信,具体实…

python编程狮题库答案_‎Python编程狮-零基础学Python dans l’App Store

Python编程狮是W3Cschool编程狮旗下专门为零基础Python编程爱好者打造的一款入门工具App,致力于帮助初学者入门,轻松迈入编程世界。学Python,从这里开始!【零基础也能学】初学者从0到1,轻松入门;【微课即学…

度量空间的应用_使用Dropwizard度量标准监视和测量无功应用

度量空间的应用在上一篇文章中,我们创建了一个简单的索引代码,该代码可以对ElasticSearch进行数千个并发请求。 监视系统性能的唯一方法是老式的日志记录语句: .window(Duration.ofSeconds(1)) .flatMap(Flux::count) .subscribe(winSize -&…

关于压缩工具 7z(7-zip) 如何设置压缩算法(选项 -m 的解读)

文章目录 一、用于指定压缩算法的选项 -m 介绍二、Zip 参数(一)X=[0 | 5 | 9 ],设置压缩等级(二)fb={NumFastBytes},设置 Deflate 编码器的单词大小(三)pass={NumPasses},设置 Deflate 编码器的传送大小三、Gzip 参数四、7z 参数(一)x=[0 | 1 | 5 | 7 | 9 ],设置压…