【问题标题】:I'm trying to write a function that gets a string from a field in html and return it if the first and the last characters are equal [duplicate]我正在尝试编写一个函数,该函数从 html 中的字段获取字符串并在第一个和最后一个字符相等时返回它[重复]
【发布时间】:2020-03-13 13:47:49
【问题描述】:

我应该在没有循环的情况下这样做。与“如果”和“其他”。

用户在html的文本字段中随机写入一个单词,该函数需要检查首尾字母是否相等。

如果它们相等 - 该函数将返回没有第一个和最后一个字符的字符串。 如果字符不相等 - 该函数将返回用户写入的字符串。

unction firstLastletter(){

    let k = document.getElementsByClassName('text').value;
    let other = 'changed the string';
    



if(k.slice(0) == k.slice(-1)){

    return console.log(k);

}

else {
    return console.log(other);
}

}

我知道我很想念。 但我不知道如何以正确的方式实现代码。

非常感谢..

【问题讨论】:

  • 您可以将其用作数组并比较第一个和最后一个元素,例如k[0] === k[k.length-1]
  • 就是这样......我不能用数组来解决它,push && pop。只使用 if 和 else 以及函数。

标签: javascript


【解决方案1】:

这样的?

function firstlastletter(s) {
  var first = s.charAt(0);
  var last = s.charAt(s.length-1);
  if(first == last) return s.substring(1, s.length-1) 
  else return s;
}

https://jsfiddle.net/mte97hg1/19/

【讨论】:

  • 是的。这似乎是更合适的答案。不过我有问题。你为什么放 'last' s.length-1 ? -1 是做什么的?它如何针对最后一个字符?请注意,如果它们是相同的字符,它应该返回没有第一个和最后一个字母的字符串。
  • s.length-1 只是让我得到字符串长度减一,以便子字符串得到没有最后一个字符的字符串。 developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…
  • 这是我写的。我几乎想通了,但是如果它们是偶数,我需要该函数返回没有第一个和最后一个字符的字符串。如果他们不是,它应该按原样返回。函数 firstLastLetter(){ 让 k = document.getElementById('text2').value;让 str =k.slice(0,1);让 str2 = k.slice(-1); if(str == str2){ k.replace(str,''); k.replace(str2,'');控制台.log(k); } 其他 { 返回 k; } }
猜你喜欢
  • 1970-01-01
  • 2020-10-04
  • 2022-11-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-31
  • 1970-01-01
相关资源
最近更新 更多