JavaScript字符串数组.ppt

上传人:wuy****n92 文档编号:70799187 上传时间:2023-01-28 格式:PPT 页数:19 大小:342.47KB
返回 下载 相关 举报
JavaScript字符串数组.ppt_第1页
第1页 / 共19页
JavaScript字符串数组.ppt_第2页
第2页 / 共19页
点击查看更多>>
资源描述

《JavaScript字符串数组.ppt》由会员分享,可在线阅读,更多相关《JavaScript字符串数组.ppt(19页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、5.1JavaScriptJavaScript语法(高级)语法(高级)5.2第三章第三章 JavaScript字符串,数组字符串,数组5.3字符串的处理方法字符串的处理方法u将两个字符串组合在一起将两个字符串组合在一起n将将字字符符串串连连接接起起来来需需要要使使用用字字符符串串连连接接运运算算符符。将将多多个个字字符符串串连连接接起起来来可可以以使使用用“+”运运算算符符,“+”运运算算符符与与“+=”运运算算符符可可以以同同时时使使用用。另另外外,字字符符串串连连接接还还可可以以使使用用javascript内内置置的的字字符符连连接函数接函数concat()。()。n方法一:方法一:var

2、 str1=“javascript字符串连接字符串连接”+“方法一方法一”;n方法二:方法二:var str2+=“方法二方法二”;str2+=“,使用,使用+=连接连接”;n方方法法三三:var str3+=“方方法法三三”;str3+=“,多多字字符符串串连连接接”+“同同时时使用多个运算符使用多个运算符”+“正确正确”!。!。n方方法法四四:var str4=“方方法法四四”;str4=str4.concat(“使使用用concat方方法法”);5.4查找子串查找子串u找到子串在字符串中的位置找到子串在字符串中的位置n javascript提提供供的的查查找找字字串串在在字字符符串串中中

3、的的位位置置的的内内置置函函数数是是indexOf()其语法格式为:其语法格式为:str.indexOf(substr);nindexof()函函数数用用于于在在指指定定字字符符串串中中,搜搜索索是是否否存存在在给给定定的的字字符符串串。如如果果存存在在返返回回给给定定字字符符串串在在指指定定字字符符串串中中第第一一次次出出现现的的索索引引(大大于于或或等等于于0)如果没有找到字串返回)如果没有找到字串返回-1u确认子串在字符串中最后出现的位置确认子串在字符串中最后出现的位置n 得得到到字字串串在在字字符符串串中中最最后后出出现现的的位位置置,可可以以使使用用lastindexof()函函数数

4、,其语法格式为其语法格式为var n=str.lastIndexOf(str);5.5查找指定位置的字符查找指定位置的字符u使使用用charAt()函函数数可可以以搜搜索索字字符符串串中中某某个个指指定定位位置置上上的的字字符符charAt()函函数数的的语语法法格格式式为为:str.charAt(n)其其中中str代代表表被被检检索索的的字字符符串串;参参数数n的的数数据据类类型型为为整整形形,表表示示第第几个位置。几个位置。u 使使用用charAt()函函数数时时需需要要注注意意,字字符符串串的的索索引引从从“0”开开始始,当当在在一一个个长长度度为为5的的字字符符串串中中,查查找找第第5

5、个个位位置置上上的的字字符符串串时时,charAt()的的参参数数应应该该为为4.当当参参数数的的值值大大于于字字符串的最大索引时,得到的是一个空值。符串的最大索引时,得到的是一个空值。5.6截取字符串的一个子串截取字符串的一个子串u在在javascript中中可可以以使使用用substring()来来截截取取一一个个字字符符串串的的子子串串,截截取取之之后后得得到新的字符串。函数到新的字符串。函数substring()的使用方法如下:()的使用方法如下:var str2=str1.substring(begin,end);参参数数begin表表示示从从字字符符串串的的哪哪个个位位置置开开始始

6、截截取取,参参数数end表表示示截截取取到到那那个个位位置置(end参数是可选的,没有参数是可选的,没有end参数表明截取到字符串结束)。参数表明截取到字符串结束)。当当参参数数的的begin的的值值大大于于字字符符串串最最大大索索引引时时,如如果果没没有有指指定定参参数数end的的值值或或者者参参数数end的的值值也也大大于于字字符符串串最最大大索索引引,截截取取的的子子串串是是空空串串。如如果果参参数数end的的值值小小于于字字符符串串的的最最大大索索引引,此此时时截截取取的的子子串串是是从从参参数数end指指定定的的位位置置开开始始一一直直到到字字符符串串结结束束的的子子串串;如如果果两

7、两个个参参数数的的值值都都在在正正常常的的取取值值区区间间内内,并并且且参参数数begin的的值大于参数值大于参数end的值,此时及其的子串相当于的值,此时及其的子串相当于begin与与end的值互换的结果。的值互换的结果。例如:例如:var str=JSStr;Str.substring(2)值为:值为:Str Str.substring(3,4)值为:值为:tStr.substring(10,3)值为:值为:tr str.substring(4,3)值为:值为:tstr.substring(10)值为空值为空;5.7提取字符串的一部分提取字符串的一部分u在在javascript中中,字字符

8、符串串的的slice()函函数数用用于于提提取取字字符符串串的的一一部部分分,并并返返回回一一个个新新字字符符串串。函函数数slice()的的语语法法格格式式与与substring()相同。()相同。Var str2=str1.substring(begin,end);Slice与与substring()函函数数的的区区别别在在于于,当当begin的的值值大大于于字字符符串串的的最最大大索索引引时时,无无论论参参数数的的end值值是是多多少少,提提取取的的字字符符串串都都是是一一个个空空串串,并并且且如如果果begin的的值值大大于于end的的值值,提提取取的字符串也是一个空串。的字符串也是一

9、个空串。5.8将一个字符串分割成一个数组将一个字符串分割成一个数组u实实际际编编程程中中经经常常会会遇遇到到根根据据某某个个或或某某几几个个字字符符组组成成的的字字符符串串,将将字字符符串串分分离离的的情情况况。Javascript中中的的split()函函数数就就可可以以实实现现这这个个功功能能。语语法法格格式式为为:var array=str.split(s)其其中中array是是分分割割之之后后的的数数组组,str是是分分割割的的字字符符串串,参参数数s是分割符或者分割字符串是分割符或者分割字符串5.93.2数组数组u数数组组就就是是由由一一系系列列数数据据组组成成的的序序列列。数数组组

10、是是一一种种基基础础的的数数据据结结构构,数数组组中中元元素素的的存存放放是是顺顺序序的的。数数组组有有下下标标,可可以以通通过过数数组组的的下下标标来来得得到到数数组组中中的的某某个个元元素素的的值值。数数组组的的下下标从标从0开始到的数组的长度减开始到的数组的长度减1为止。为止。uJavascript中中的的数数组组不不需需要要用用户户指指定定数数组组的的类类型型,直直接接使使用用new Array()语语句句即即可可创创建建一一个个数数组组。在在javascript中中同同一一个个数数组组中中的的数数据据类类型型可可以以不不相相同同,而而且且创创建建时时不不需需要要指定数组的大小。指定数

11、组的大小。uvar a=new Array();5.10计算数组的长度计算数组的长度uJavaScript中中数数组组有有length属属性性。如如果果需需要要获获取取数数组组的的长长度度,可可以以直直接接使使用用数数组组的的length属属性性。获获取取数数组组长长度度的的语语法法格格式为:式为:var len=array.length其中其中len就是数组的长度。就是数组的长度。5.11删除数组最后的项删除数组最后的项u删删除除数数组组中中的的数数值值,可可以以将将数数组组中中某某个个位位置置的的值值赋赋为为null或或者者改改写写为为空空串串。还还有有一一种种方方法法就就是是使使用用数数

12、组组的的delete方方法法删删除除数数组组中中的的项项。Delete方方法法的的语语法法格格式式为为:delete arrayn 其其中中array是是数数组组名名,参参数数n代代表表需需要要删删除除的的数数组组项的索引。项的索引。删删除除一一个个数数组组会会清清除除可可访访问问的的索索引引值值列列表表中中的的索索引引,但但是是数数组组的的长长度度并并不不会会变变化化。使使用用delete方方法法删删除除数数组组项项时时,并并不不能能释释放放数数组组占占用用的的内内存存空空间间,JavaScript有有一一套套自自动动的的类类似似于于java的的垃垃圾圾收收集集器器的的机机制制来来完完成成无

13、无效效数数据据的的自自动动回回收。收。5.12u实实现现删删除除数数组组中中的的项项并并可可以以自自动动调调整整数数组组长长度度的的功功能能,可可以以使使用用splice()方方法法。splice()方方法法是是插插入入和和删删除除数数组组元元素素的的通通用用方方法法。它它在在原原 数数 组组 上上 修修 改改 数数 组组。Splice()方方 法法 的的 语语 法法 格格 式式 为为:array.splice(begin,n,item1,item2,);其其中中array是是需需要要删删除除项项的的数数组组;参参数数begin代代表表从从数数组组的的哪哪一一项项开开始始删删除除(需需要要说说

14、明明的的是是begin的的值值是是数数组组的的索索引引值值,即即从从0开开始始的的值值);参参数数n代代表表需需要要删删除除的的数数组组的的项项数数。参参数数item1,item2,是是需需要要插插入入数数组组的的数数据据。使使用用splice方方法法删除的数组中的项是从索引删除的数组中的项是从索引begin开始的连续开始的连续n个数据项。个数据项。例如:例如:var a=1,2,3,4,5,6,7,8;a.splice(1,2)returns2,3 a is 1,4,5,6,7,8 a.splice(1,1)returns4 a is 1,5,6,7,8;uSplice()的的前前两两个个参

15、参数数指指定定了了应应该该删删除除的的数数组组元元素素。这这两两个个参参数数之之后后还还可可以以有有任任意意多多个个额额外外的的参参数数,它它们们指指定定的的是是要要从从第第一一个个参参数数指指定定的的位位置处开始插入元素。例如:置处开始插入元素。例如:var a=1,2,3,4,5;a.splice(2,0,a,b);returns;a is 1,2,a,b,3,4,5;a.splice(2,2,1,2,3);returnsa,b;a is 1,2,1,2,3,3,4,5;5.13数组常用方法数组常用方法 upush()方法和()方法和pop()方法()方法 push()和和pop()方方法

16、法使使我我们们可可以以像像使使用用栈栈那那样样来来使使用用数数组组。方方法法push()可可以以将将一一个个或或多多个个新新元元素素附附加加到到数数组组的的尾尾部部,然然后后返返回回数数组组的的新新长长度度。方方法法pop()恰恰恰恰相相反反,它它将将删删除除数数组组的的最最后后一一个个元元素素,减减少少数数组组的的长长度度,返返回回它它删删除除的的值值。注注意意,这这两两个个方方法法都都是是在在原原数数组组上上修修改的数组而非生成一个修改过的数组副本。改的数组而非生成一个修改过的数组副本。uunshift()方法和方法和shift()方法()方法 unshift()和和shift()方方法法

17、的的行行为为和和push()与与pop()非非常常相相似似,只只不不过过它它们们是是在在数数组组的的头头部部进进行行元元素素的的插插入入和和删删除除,而而不不是是尾尾部部进进行行元元素素的的插插入入和和删删除除。方方法法unshift()会会将将一一个个或或多多个个元元素素添添加加到到数数组组的的头头部部,然然后后把把已已有有的的元元素素移移动动到到下下标标较较大大的的位位置置腾腾出出空空间间,返返回回新新的的数数组组长长度度,方方法法shift()会会删删除除并并返返回回数数组组的的第第一一个个元元素素,然然后后将将后后面面的的所所有元素都向前移动以补充第一个元素留下的空白有元素都向前移动以

18、补充第一个元素留下的空白5.14u将数组对象内容反转将数组对象内容反转 实实际际编编程程中中,可可能能会会出出现现需需要要将将数数组组的的内内容容进进行行反反序序处处理理的的情情况况,这这种种情情况况下下用用户户可可以以直直接接使使用用数数组组的的reverse()函函数数完完成成对对数数组组内内容容的的反转。格式为反转。格式为array.reverse()u数组按字符的数组按字符的ASCII码进行排序码进行排序 当当需需要要将将数数组组按按照照每每一一项项的的ASCII码码进进行行排排序序时时,可可以以使使用用数数组组内内部部的的sort()函数()函数 格式为格式为array.sort()

19、。u把数组各个项用某个字符串连接起来把数组各个项用某个字符串连接起来 目目前前从从页页面面向向后后台台传传递递数数据据,不不支支持持像像数数组组这这种种多多数数组组组组合合的的类类型型。用用户户可可以以将将数数组组中中的的内内容容以以某某个个字字符符串串作作为为分分隔隔符符,将将数数组组连连接接起起来来成成为为一一个个字字符符串串,然然后后再再传传递递数数据据。这这是是用用户户可可以以使使用用数数组组内内部部的的join函函数数,语语法法格格式式为为:var str=array.join(str)其其中中str是是连连接接的的字字符符串串如如果果没没有有给给join()函函数数传传递递参参数数

20、,系系统统自自动动使使用用“,”作作为为分分隔隔符符。Join函函数数不不会会改改变变原原来来的的数数组组,对对数数组组使使用用join()函函数数之之后后,原数组的内容么有任何变化原数组的内容么有任何变化5.15多维数组多维数组u在在JavaScript中中只只有有一一维维数数组组。如如果果实实际际中中使使用用多多维维数数组组,用用户户可可以以利利用用JavaScript数数组组存存储储的的数数据据类类型型以以不不同同的的特特性性,先先将将数数据据分分别别存存储储在在多多个个数数组组中中,然然后后将将说说有有的的数数组组存存放放在在一一个个一一维维数数组组中中,即即在在数数组组中中存存放放数

21、数组组。用用户户还还可可以以使使用用自自定定义义对对象象,先先将将数数据据存存放放在在自自定定义义对对象象中中,然然后后再存放在数组中。再存放在数组中。5.163.3数据类型转换数据类型转换u在在实实际际编编程程中中,有有些些时时候候需需要要将将一一部部分分数数据据统统一一转转换换成成某某种种数数据据类类型型进进行行处处理理,这这种种转转换换包包括括转转换换为为字字符符串串,转转换换为为数数字字以以及及系系统统自自动动转转换换的的数数据据类类型型。下下面面主主要要介介绍绍各各种种转换的方法转换的方法5.17转换为字符串转换为字符串uJavaScript是是基基于于对对象象的的脚脚本本语语言言,

22、所所有有的的数数据据类类型型都都是是可可以以看看做做对对象象,而而其其所所有有对对象象都都有有toStirng()方方法法。因因此此用用户户可可以以使使用用此此方方法法将数据转换成字符串。将数据转换成字符串。u例如:例如:var str=“JavaScript String”;/字符串字符串 var num=100;/数值型数据数值型数据 var flag=true;/布尔型数据布尔型数据 var personObj=new persion(tom,178,70););/对象对象Document.write(“字符串转换成字符串字符串转换成字符串”+str.toString()Document

23、.write(“数值转换成字符串数值转换成字符串”+num.toString();Document.write(“布尔型转换成字符串布尔型转换成字符串”+flag.toString();Document.write(“object转换成字符串转换成字符串”+personObj.toString();5.18转换为数字转换为数字uJavaScript中中有有两两个个函函数数可可以以将将非非数数值值类类型型的的数数据据转转换换为为数数值值类类型型。即即parseInt()和和parseFloat()。根根据据函函数数名名就就可可以以看看出出前前者者将将数数据据转转换换为为整整型型,后后者者则则将将

24、数数据据转转换换成成浮浮点点型型。需需要要注注意意的的是是只只有有对对与与合合法法的的字字符符串串类类型型使使用用这这两两个个函函数数时时才才能能够够正正常常转转成成数数值值型型,其其他他类类型型的的数数据据将将返返回回NaN。5.19自动类型转换自动类型转换u在在JavaScript中中,如如果果表表达达式式中中存存在在多多种种数数据据类类型型,系系统统会会根根据据不不同同情况对数据的类型进行相应处理。情况对数据的类型进行相应处理。数值数值+字符串时,系统会把数值转换成字符串,然后与字符串连接。字符串时,系统会把数值转换成字符串,然后与字符串连接。数值数值-字符串时,系统会把字符串转换成数值

25、,然后计算两者之差。字符串时,系统会把字符串转换成数值,然后计算两者之差。字字符符串串之之间间的的操操作作,除除了了“+”操操作作把把字字符符串串连连接接起起来来,其其他他操操作作(-,*,/)都将字符串转换成数值,然后进行运算时)都将字符串转换成数值,然后进行运算时u在在不不同同情情况况下下,系系统统根根据据不不同同情情况况将将数数据据类类型型进进行行转转换换,这这样样有有时时会会造造成成计计算算错错误误。为为防防止止错错误误发发生生,可可以以在在计计算算之之前前将将数数据据类类型型进进行行强强制转换。制转换。JavaScript有如下有如下3种强制类型转换的方法。种强制类型转换的方法。Boolean(value):把给定的值():把给定的值(value)转成布尔型。)转成布尔型。Number(value):把给定的值():把给定的值(value)转换成数字型。)转换成数字型。String(value):把给定的值():把给定的值(value)转换成字符串型。)转换成字符串型。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁