[2021-05-05] 조건식 본문

code/Daily Side Project

[2021-05-05] 조건식

남우p 2021. 5. 5. 21:43

Question : 

 


function countSmileys(arr) {
  var sum = 0;
  for(var i = 0; i < arr.length;i++){
    var arrayLetter = arr[i];
    if(arrayLetter.length <= 3 && (arrayLetter[0] === ":" || arrayLetter[0] === ";")){
      if((arrayLetter.length === 3 && arrayLetter[1] === "-" || arrayLetter[1] === "~") || arrayLetter.length === 2){
        if(arrayLetter.indexOf(")") > 0 || arrayLetter.indexOf("D") > 0){
          sum += 1;
        }
      }
    }
  }
 return sum;
}
const smileyRegEx = new RegExp (/[:;][-~]?[)D]/)
const isSmiley = s => smileyRegEx.test(s)
const countSmileys = a => a.filter( isSmiley).length
const countSmileys = arr => arr.filter(s=>s.match(/((:|;)(~|-){0,1}(\)|D))/)).length;
const faces = new Set()
for (let eyes of [':',';'])
    for (let nose of ['-','~',''])
        for (let mouth of [')','D'])
            faces.add(eyes+nose+mouth)

countSmileys =(arr)=> arr.filter(x => faces.has(x)).length
Comments