比较数组元素(Javascript)时出现问题



嘿,我有一个小问题。所以基本上我将字符串传递给函数作为参数,然后将其转换为数组,我正在尝试将生成的数组元素相互比较,如果它们相等,它应该返回")"else "(",但是比较元素时出现问题并且值是错误的。也许有人可以帮助我。

function duplicateEncode(word) {
  let splitString = word.split("");
  let newArr = splitString.map((val, index, arr) => {
    for (let i = 0; i < splitString.length; i++) {
      if (val === arr[i]) {
        return ')';
      } else {
        return '(';
      }
    }
  });
  return newArr.join('');
}

使用 Javascript 的 Map 对象来存储当前字母是否存在。

function duplicateEncode(word){
	let m = new Map();
        let splitString= word.split("");
	let coded = "";
	splitString.map( s => {
		if(!m[s]){
			m[s] = true
			coded += "("
		} else {
			coded += ")"
		}
	})
	return coded
}
console.log(duplicateEncode("stack"))

相关内容

  • 没有找到相关文章

最新更新