欢迎关注微信公众号:chave-cn

JavaScript实现字符串倒序的方法

本主要介绍了一个字符串反转函数可实现字符串倒序,很简单,但很实用,感兴趣的朋友可以参考下:

方法一:
<script type="text/javascript">
var str="abcdeg";
function demo(str){
var str2="";
for(var i=0;i<str.length;i++){
str2+=str.charAt(str.length-i-1);
}
 
document.write(str+"<br />"+str2)
}
demo(str);
</script>

解析:

charAt() 方法可返回指定位置的字符。

语法:stringObject.charAt(index)

Index 必需。表示字符串中某个位置的数字,即字符在字符串中的下标

提示和注释

注释:字符串中第一个字符的下标是 0。如果参数 index 不在 0 与 string.length 之间,该方法将返回一个空字符串。

实例:

在字符串 "Hello world!" 中,我们将返回位置 1 的字符:

<script type="text/javascript">
var str="Hello world!"
document.write(str.charAt(1)) 
</script>

以上代码的输出是:e

 

方法二:
<input type="textfield" id="input"/>
<div id="result"></div>
<input type="button" value="reverse" onclick="reverse()"/>

<script language="javascript">
function reverse()
{
var str=document.getElementById("input").value;
var a=str.split('');
var result=new Array();
while(a.length)
{
result.push(a.pop());
}
document.getElementById("result").innerHTML=result.join('');
}
</script>

解析:

1、join():该方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。

返回值:返回字符串值,其中包含了连接到一起的数组的所有元素,元素由指定的分隔符分隔开来。

格式:arrayObj.join(separator)

arrayObj 必选项,Array 对象;

separator 可选。指定要使用的分隔符。如果省略该参数,则使用逗号作为分隔符。

var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
 
document.write(arr.join("."))

输出:

George.John.Thomas

注:Array.join() 等价于 Array.toString()

2、split():将一个字符串分割为子字符串数组,然后将结果作为字符串数组返回。

格式:stringObj.split(separator, hovmany)

stringObj 必选项,要被分解的 String 对象或文字。

separator 可选项。字符串或正则表达式对象,它标识了分隔字符串时使用的是一个还是多个字符。如果忽略该选项,返回包含整个字符串的单一元素数组。

hovmany可选项。该值用来限制返回数组最大长度。如果设置了该参数,返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。

<script type="text/javascript">
 
var str="How are you doing today?"
 
document.write(str.split(" ") + "<br />")
 
document.write(str.split("") + "<br />")
 
document.write(str.split(" ",3))
 
</script>

输出:

How,are,you,doing,today?

H,o,w, ,a,r,e, ,y,o,u, ,d,o,i,n,g, ,t,o,d,a,y,?

How,are,you

3、reverse():返回一个元素顺序被反转的 Array 对象。

格式:arrayObj.reverse()

arrayObj 必选项,Array 对象。

该方法会改变原来的数组,而不会创建新的数组。

<script type="text/javascript">
 
var arr = new Array(3)
 
arr[0] = "George"
 
arr[1] = "John"arr[2] = "Thomas"
 
document.write(arr + "<br />")
 
document.write(arr.reverse()) 
 
</script>

输出:

George,John,Thomas

Thomas,John,George

 

微信号
微信公众号

tao-s.com