Почему всегда один и тот же результат в этой простой конструкции IF?

Рейтинг: 0Ответов: 1Опубликовано: 30.06.2023

Всем привет! Помогите новичку, вернее, я вообще из другой отрасли, но пришлось написать с помощью AI простой код для сравнения значений. К примеру, textValue получает на входе значение "грн", что видно с помощью console.log(textValue); а тип console.log(typeof(textValue)); string

А в результате на выходе всегда "Unknown Text Value".

код:

var element = document.querySelector(".confirmation-block__pay-price");
var elementStyle = getComputedStyle(element, "::after");
var textValue = (elementStyle.content);
var convertedTextValue = "";
  
  console.log(textValue); // "грн"
  
if (textValue == "грн")   
  convertedTextValue = "UAH";
  else if (textValue == "\0024")
  convertedTextValue = "USD";  
  else if (textValue == "\20AC")
  convertedTextValue = "EUR";
  else
  convertedTextValue = "Unknown Text Value";

  console.log(convertedTextValue);

Буду признателен за подсказу, т.к. есть срочная задача, а спросить, как выяснилось не у кого

Ответы

▲ 1

Потому что значение лежит вместе с кавычками, что отлично видно по выводу в консоль:

var element = document.querySelector(".confirmation-block__pay-price");
var elementStyle = getComputedStyle(element, "::after");
var textValue = elementStyle.content;

console.log(textValue);
console.log("грн");
console.log('"грн"');
.confirmation-block__pay-price::after {
  content: "грн"
}
<div class="confirmation-block__pay-price"></div>