js中实现字符串和数组的相互转化详解

 更新时间:2016年01月24日 09:50:08   投稿:lijiao  
这篇文章主要介绍了js中实现字符串和数组的相互转化,感兴趣的小伙伴们可以参考一下

         最近看了一道JS的面试题,是这样描述的:利用var s1=prompt("请输入任意的字符串","")可以获取用户输入
的字符串,试编程将用户输入的字符串“反转”,并且将字符串输出。
        想了一下,字符串对象的方法中并没有实现反转的,但是数组中有,于是考虑了字符串和数组的相互转换问题。
        JS中的内置对象中包括字符串对象(String)和数组对象(Array),这两个对象是可以通过它们对象的方法实现相互
转化的。对于String对象,提供了对字符串进行操作的属性和方法;对于Array对象,提供了数组操作方面的属性和方
法。因此我们实现上面的面试题就容易了。
一、字符串转化为数组
       String对象中的split()方法
       上述方法的功能是:将一个字符串切割成若干段,返回一个数组。也就是说,可以将一个字符串转成数值。如:
strObj.split(分割号),参数是一个分割号的字符串,用指定的分割号将字符串切成若干段。
 实例:

//要求输出今天是星期几 
//定义一个星期字符串 
var str="星期日,星期一,星期二,星期三,星期四,星期五,星期六"; 
//创建一个日期对象 
var today=new Date(); 
//使用today对象的getDay()方法 
var week=today.getDay(); 
//将星期字符串分割成一个数组 
var arr=str.split(","); 
document.write("类型是:"+typeof(arr)+",数组的第一个元素是:"+arr[0]+"<br />"); 
//输出结果 
document.write("今天是:"+arr[week]); 

 输出的结果是:类型是:object,数组的第一个元素是:星期日
                            今天是:星期五
二、数组转换为字符串和数组元素实现反转
 Array对象的join()方法
       上述方法的功能是:将一个数组转成字符串。如:arrObj.join(连接号),将一个数组用指定的连接号链接成一个字
符串。
实例:

var arr=["a","b","c"]; 
var str=arr.join("-"); 
document.write("类型是:"+typeof(str)+",字符串是:"+str); 

输出的结果是:类型是:string,字符串是:a-b-c
 Array对象的reverse()方法
上述方法的功能是:将数组中各元素颠倒顺序。如:arrObj.reverse()。
实例:

var arr=["a","b","c"]; 
arr.reverse(); 
document.write(arr); 

输出的结果是:c,b,a
最后我们来看面试题的实现代码:

/* 
 利用var s1=prompt("请输入任意的字符串","")可以获取用户输入 
 的字符串,试编程将用户输入的字符串“反转”,并且将字符串输出。 
*/ 
//接受字符串 
var s1=prompt("请输入任意的字符串",""); 
//字符串转换为数组 
var arr=s1.split(""); 
//利用数组对象的reverse()方法实现反转 
arr.reverse(); 
//利用数组的join()方法转换为字符串 
var str=arr.join(""); 
document.write(str); 

 实现的结果:

以上就是本文的全部内容,希望对大家的学习有所帮助。

相关文章

  • js实现的网页颜色代码表全集

    js实现的网页颜色代码表全集

    js实现的网页颜色代码表全集...
    2007-07-07
  • JS遍历DOM文档树的方法实例详解

    JS遍历DOM文档树的方法实例详解

    这篇文章主要介绍了JS遍历DOM文档树的方法,结合实例形式分析了javascript遍历dom文档树的相关方法与使用技巧,需要的朋友可以参考下
    2018-04-04
  • javascript 上下banner替换具体实现

    javascript 上下banner替换具体实现

    这篇文章介绍了javascript 上下banner替换具体实现,有需要的朋友可以参考一下
    2013-11-11
  • 详解ES6中的let命令

    详解ES6中的let命令

    let是ES6里面新的复制命令,let赋值命令只可以在{}代码块中被调用。这篇文章主要介绍了ES6中的let命令,需要的朋友可以参考下
    2016-12-12
  • BootStrap tab选项卡使用小结

    BootStrap tab选项卡使用小结

    这篇文章主要为大家详细介绍了BootStrap tab选项卡使用小结,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-10-10
  • jQuery与JavaScript节点创建方法的对比

    jQuery与JavaScript节点创建方法的对比

    本文主要介绍jQuery与JavaScript节点的创建方法,以及他们的具体代码实现方法,大家可以对比下他们之间的不同,希望对大家编写代码有所帮助
    2016-11-11
  • 浅谈layui里的上传控件问题

    浅谈layui里的上传控件问题

    今天小编就为大家分享一篇浅谈layui里的上传控件问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-09-09
  • JavaScript中的Proxy对象

    JavaScript中的Proxy对象

    这篇文章主要介绍了JavaScript中的Proxy对象的相关资料,帮助大家更好的理解和学习JavaScript,感兴趣的朋友可以了解下
    2020-11-11
  • babel的使用及安装配置教程

    babel的使用及安装配置教程

    babel是一个广泛使用的转码器,可以将ES6代码转化为ES5代码,从而在现有环境执行。这篇文章主要介绍了babel的使用以及安装配置,需要的朋友可以参考下
    2018-02-02
  • javascript生成随机数的方法

    javascript生成随机数的方法

    这篇文章主要介绍了javascript生成随机数的方法,需要的朋友可以参考下
    2014-05-05

最新评论