关于数组与字符串的使用

摘要在JS中数组被划分为对象,也就是说,它和一般对象一样,都由其属性和方法组成,在很多应用中,我们可以看到关于数组使用的例子,学习一些编程语言的读者知道,数组与相关的数据结构操作有着密切关系,如各种排序算法、二叉树和图的操作、特殊值的查找以及常见的增删改操作等。可以说数组不管对哪种编程语言来说都是一种非常重要的数据结构。字符串在JS中也是一种非常重要的数据结构,其实它也是数组的一种,只是它的元素类型是字符串,它有自己的一套操作方法。以下内容主要绍介与数组和字符串相关的一些常用操作方法。

 一、数组

          数组在JS中作为对象的一种,其最常用的属性是length即数组的长度值,这个值在数组的操作中经常用到,它可以动态地反映数组中的元素个数,通常用在循环中,用于判断某个值是否超出了数组的长度范围,以此来决定循环的结束条件。通常创建数组有三种方法:

            1: 常规方式:var myCars=new Array(); 
      myCars[0]="Saab"; 
      myCars[1]="Volvo";
      myCars[2]="BMW";

           2: 简洁方式:

var myCars=new Array("Saab","Volvo","BMW");

      3: 字面:

       var myCars=["Saab","Volvo","BMW"];

        对于其常用的方法,与其相关的操作有密切关系,由于对数组来说,可能最常见的操作主要有对元素的删除、插入、查找、排序等,所以在JS中与这些操作对应的方法有pop()、push()、shift()、unshift()、slice()、splice()、sort()等。下面分别简要地说明一下这些方法在JS中的使用。

  •   pop()和push()方法:学过《数据结构》的读者应该知道这两个方法和“栈”这种数据结构的方法是一样的,push()是将数据压入栈中,pop()是把元素从栈中取出,在JS中这两个方法的操作过程其实与栈的push()和pop()方法原理是相同的,push()是把一个数据元素插入到数组的尾部,而pop()的操作过程正好相反,即把数组中的最后一个元素删除。
  • shift()和unshifth()方法:这两个方法和push()和pop()方法一样,都是与删除插入相关的一组操作,只不过其操作的位置是在数组的头部进行,shift()就把数组的第一个元素删除,而unshift()是在数组的第一个位置插入一个元素。
  • slice()方法:当在这个方法中指定一个参数时如slice(2);这时它会返回数组中下标为2之后的所有元素,这个方法我觉得对于要获取一个数组中的子数组的情况还是非常有用的。
  • splice()方法:这个方法功能比较强大,我们可以通过设置参数个数以及参数值的不同,就可以通过这个函数对数组的删除和插入操作,而且删除和插入的元素个数可以非常灵活。如当只设置有一个参数时如:splice(3);它会取出数组中的前3个元素;当设置两个参数时如:splice(2,3);会把数组中从下标为2开始的三个元素删除(包括下标2);当设置三个参数时如:splice(2,3,1);会先把数组中从下标为2开始的三个元素删除(包括下标2),然后再把1插入到刚才被元素的位置,这个操作相当于元素的替换;但如果这样设置splice(2,0,1);其实就是把1值插入到下标为2的位置。所以综上所述,这个函数可以对数组进行插入、删除和替换操作。
  • sort()方法:该方法用于对数组的排序,对字符数组,按字母的字典顺序升序排序,对具体有两位以上的数进行排序时,在该方法里还要嵌套另一方法如下所示:
               sort(function(a,b){return a-b;});
二、字符串

 字符串比较一点,根据创建的方式不同,它可以是普通的字符串,也可以是一个对象,例如这样的创建方式就是一个普通的字符串:var str="abcd";而用var str=new String("abcd");的创建方式时,str就是一个对象。在JS中字符串常用的属性也是length这点和普通的数组一样。但它所用到的方法又和数组的有些差别。对字符串操作时常用的方法有charAt()、indexOf()、concat()、substring()、split()等。

  • charAt()方法:根据指定的索引值获取字符串中的字符
  • indexOf():用于获取一个字符在字符串中的索引
  • concat():返回两个字符串连接后的新字符串
  • substring():返回一个子字符串,当只设置一个参数时,如substring(2);会返回索引为2之后的元素值
  • split():返回一个删除指定字符后的新字符串
下面是关于字符串的一个应用:问题描述如下:

把border-bottom-color转换成以驼峰命名法的字符串。

主要代码如下:

             function(str){

           str.split("-");

           for(var i=1;i<str.length;i++){

           str[i]=str[i].charAt(0).toUpperCase()+str[i].substring(1);

         }

         str.join("");

}


三、总结

          数组和字符串在实际应用中非常广泛,具有很强的灵活性,要熟练掌握其中的规律,必须要不断深化对相关知识点的理解。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
大学生参加学科竞赛有着诸多好处,不仅有助于个人综合素质的提升,还能为未来职业发展奠定良好基础。以下是一些分析: 首先,学科竞赛是提高专业知识和技能水平的有效途径。通过参与竞赛,学生不仅能够深入学习相关专业知识,还能够接触到最新的科研成果和技术发展趋势。这有助于拓展学生的学科视野,使其对专业领域有更深刻的理解。在竞赛过程中,学生通常需要解决实际问题,这锻炼了他们独立思考和解决问题的能力。 其次,学科竞赛培养了学生的团队合作精神。许多竞赛项目需要团队协作来完成,这促使学生学会有效地与他人合作、协调分工。在团队合作中,学生们能够学到如何有效沟通、共同制定目标和分工合作,这对于日后进入职场具有重要意义。 此外,学科竞赛是提高学生综合能力的一种途径。竞赛项目通常会涉及到理论知识、实际操作和创新思维等多个方面,要求参赛者具备全面的素质。在竞赛过程中,学生不仅需要展现自己的专业知识,还需要具备创新意识和解决问题的能力。这种全面的综合能力培养对于未来从事各类职业都具有积极作用。 此外,学科竞赛可以为学生提供展示自我、树立信心的机会。通过比赛的舞台,学生有机会展现自己在专业领域的优势,得到他人的认可和赞誉。这对于培养学生的自信心和自我价值感非常重要,有助于他们更加积极主动地投入学习和未来的职业生涯。 最后,学科竞赛对于个人职业发展具有积极的助推作用。在竞赛中脱颖而出的学生通常能够引起企业、研究机构等用人单位的关注。获得竞赛奖项不仅可以作为个人履历的亮点,还可以为进入理想的工作岗位提供有力的支持。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值