检测字符串的前半部分是否与后半部分匹配的函数 - 作业警告JS

时间:2016-12-16 19:18:49

标签: javascript string

我有这个家庭作业问题而我无法找到一个好的检查方法。我已经走下了indexOf和string.repeat()的路径,但只是没有得到问题所在。我可以做一个reg ex,但因为这是基本的javascript我想知道怎么做而不去那里。

问题: 编写一个名为repeats的函数,如果是上半部分则返回true 字符串等于后半部分,如果不是

,则为false

示例:

如果你传递它“haha”那么它应该返回true,因为“ha”(前半部分)等于 “哈”(下半场) 如果你传递它“yay”那么它应该返回false,因为它很奇怪 如果你传递它“heehaw”然后它应该返回false因为“hee”不等于“haw” * /

这是我在循环和方法的许多尝试后到目前为止所做的:

var stringEq = "haha";
var stringNoEq = "heehaw";

function stringEqual(string) {

    if (string.length % 2 !== 0) {
        return false;
      }
      else{
        string.length /2 
      }

    }

    stringEqual(stringEq)

任何帮助表示感谢。

2 个答案:

答案 0 :(得分:0)

function stringEqual(myString) {
    if (myString.length % 2 != 0) {
        return false;
    }
    var firstHalf = myString.substr(0, myString.length/2);
    var secondHalf = myString.substr(myString.length/2);

    return firstHalf == secondHalf;
}

答案 1 :(得分:0)

function halfStringAreEqual(string str){
    if (str.length % 2 != 0)
        return false;

    var half = str.length / 2;

    return str.substr(0, half) == str.substr(half, str.length - half);
}