#javascript
Здравствуйте! Есть "код": if ( type == "cool" ){ if ( skin.category == "cool" ){ skinsARR[skin.categorySort] = skinsTMP; } } if ( type == "flags" ){ if ( skin.category == "flags" ){ skinsARR[skin.categorySort] = skinsTMP; } } if ( type == "elite" ){ if ( skin.category == "elite" ){ skinsARR[skin.categorySort] = skinsTMP; } } if ( type == "elite" ){ if ( skin.category == "elite" ){ skinsARR[skin.categorySort] = skinsTMP; } } if ( type == "vip" ){ if ( skin.category == "vip" ){ skinsARR[skin.categorySort] = skinsTMP; } } Выглядит очень не красиво, понимаю что можно было бы оформить лучше - но не совсем понимаю как.
Ответы
Ответ 1
А теперь запихнем в один if const allowedTypes = [ "cool", "flags", "elite", "vip" ]; if(type===skin.category && allowedTypes.indexOf(type)!==-1){ skinsARR[skin.categorySort] = skinsTMP; };Ответ 2
вариант через хеш чтобы избавиться от тяжёлого indexOf + меньше сравнений const allowedTypes = { "cool" : "cool", "flags" : "flags", "elite" : "elite", "vip" : "vip" }; if (allowedTypes[type] && type === skin.category) { // edited skinsARR[skin.categorySort] = skinsTMP; }Ответ 3
if (type == "cool" && skin.category == "cool") { skinsARR[skin.categorySort] = skinsTMP; } if (type == "flags" && skin.category == "flags") { skinsARR[skin.categorySort] = skinsTMP; } if (type == "elite" && skin.category == "elite") { skinsARR[skin.categorySort] = skinsTMP; } if (type == "vip" && skin.category == "vip") { skinsARR[skin.categorySort] = skinsTMP; } Вот, уже в разы короче получается.
Комментариев нет:
Отправить комментарий