html+++数组转为字符串,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]+"
");

//输出结果

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);

实现的结果:

24d99f59e5e4f23e9abe2c53e6f6fc48.png

b840c8adf3d20e2a79410d5b6fd652d4.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值