簡體   English   中英

如何比較字符串字母(javascript)

[英]How to compare string letters (javascript)

嘿,我一直在嘗試編寫一個簡單的JavaScript函數來比較字符串字母,但是由於某種原因我無法使其正常工作……這里是代碼。

function compare(wordOne, wordTwo) {
    if (wordOne.substring(0) === wordTwo.substring(0))
    {
        return true;
    } else {
        return false;
    }
}
compare("house", "hell");

假設您要比較兩個字符串的第一個字母,可以使用以下代碼

function compare(wordOne, wordTwo) {
    return wordOne[0] === wordTwo[0];
}
compare("house", "hell");

這使if / else條件更加簡潔,因為您只對第一個字母是否相等感興趣,而不是對它們的區別感興趣。 您也可以使用str.toUpperCase() (或) str.toLowerCase()使比較大小寫不敏感。

按照@Josh Katofsky的建議,您當然可以通過以下方式使此功能更加通用:-例如,添加測試第n個字母的第三個參數:

function compare(wordOne, wordTwo, index) {
    return wordOne[index] === wordTwo[index];
}
compare("house", "hell", 0);

為了解釋為什么當前代碼無法正常工作,您需要將第二個參數傳遞給.substring作為to值。 String.substring(0)僅返回第0個字符之后的整個字符串,因此返回整個單詞。 固定示例;

function compare(wordOne, wordTwo) {
    if (wordOne.substring(0, 1) === wordTwo.substring(0, 1)) {
        return true;
    }
    else 
    {
        return false;
    }
}

compare("house", "hell");

您也可以只使用wordOne[0] === wordTwo[0]

substring返回字符串在開始索引和結束索引之間或字符串結尾的部分

如果只想比較第一個字符,請使用charAt

function compare(wordOne, wordTwo) {
   return wordOne.charAt(0) === wordTwo.charAt(0);
}
compare("house", "hell");

或者您可以將索引作為參數傳遞

function compare(wordOne, wordTwo, index) {
   return wordOne.charAt(index) === wordTwo.charAt(index);
}
compare("house", "hell", 0);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM