我借了一段用于在JavaScript中反转字符串的代码。然而,它无法完成。
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>P4--Largest palindrome product</title>
</head>
<body>
<!--A palindromic number reads the same both ways. The largest palindrome made from the product of two 2-digit numbers is 9009 = 91 × 99.
Find the largest palindrome made from the product of two 3-digit numbers.
-->
<script type="text/javascript">
var newdiv = document.createElement('div');
newdiv.innerHTML=Palindromic();
alert(Palindromic());
function Palindromic(){
var x;
var a;
var b;
for(i=999*999;i>=100*100;i--)
{
x=i.toString();
if(x != x.reverse())
continue;
else
{
for(j=100;j<999;j++)
{
if(i%j == 0)
{
var y =i/j;
if(y>=100 && y<=999)
{
a=i;b=y;
break;
}
}
}
}
}
return x;
}
String.prototype.reverse = function() {
return this.split('').reverse().join('');
}
</script>
</body>
</html>
错误是“没有方法'反向'”。
答案 0 :(得分:3)
您需要在使用之前定义String.prototype.reverse
函数。
把这段代码
String.prototype.reverse = function() {
return this.split('').reverse().join('');
}
在顶部而不是在底部。
答案 1 :(得分:1)
<强> ES6:强> 试试这个功能
function reverse(str) {
// 1 // // 2 // // 3 //
return [...str].reverse().reduce((rev,el) => rev + el,'');
}