如何修复JavaScript中的“ Uncaught SyntaxError:标识符'removeVowelsAndSpaces'已被声明”

时间:2019-06-21 05:54:05

标签: javascript string function

我要删除给定字符串中的元音和空格。但是我正面临这个问题,不知道这是什么。

let removeVowelsAndSpaces = function(givenString)
{
   // start your code here.

 var vowels = ['a', 'e', 'i', 'o', 'u'];
  //givenString = String(givenString)
  //return givenString.replace(" ","")
  return givenString.replace(' ','').split('').filter(function(el) {
    return vowels.indexOf(el.toLowerCase()) == -1;
  }).join('');
};
var removeVowelsAndSpaces(`'arjit kumar'`)

未捕获的SyntaxError:标识符'removeVowelsAndSpaces'已被声明。在这里,我为removeVowelAndSpaces声明了var,但是没有运气。请帮助

2 个答案:

答案 0 :(得分:0)

您在底部使用var,它再次声明了变量。由于您已经在顶部声明了变量,因此只需要使用它即可。就像在console.log函数中一样,我正在使用removeVowelsAndSpaces

   // start your code here.

   let removeVowelsAndSpaces = function(givenString){   

     let vowels = {
       'a': true,
       'e': true,
       'i': true,
       'o': true,
       'u': true,
       ' ': true,
     };

     let result = "";

     for (let i = 0; i < givenString.length; i++) {
       let letter = givenString[i].toLowerCase();
       if (!vowels[letter]) {
         result += givenString[i];
       }
     }
     return result;
   };
   console.log(removeVowelsAndSpaces("arijit kumar"))

答案 1 :(得分:-1)

代码底部还有另一个#include <iostream> using namespace std; int* probSolver(int arr_num[], int n); int main() { int n; cout<< " enter the size of array\n " << endl; cin>> n; int arr_num[n]; cout<<" please enter array number\n " << endl; for(int i=0; i<n; i++) cin>> arr_num[i]; int *new_arr = probSolver(arr_num, n); for(int i=0; i<n; i++){ cout << new_arr[i] << " "; } return 0; } int* probSolver(int arr_num[], int n) { int arr_new[n]; int *ptr_arr_new = arr_new; for(int i=0; i<n; i++){ int multi = 1; for(int j=0; j<n; j++){ if(i!=j) multi = multi*arr_num[j]; } arr_new[i] = multi; } return ptr_arr_new; } 。也许您可以使用另一个变量来存储结果。另外,您还没有使用var符号。这可能会导致错误。