печать переменной в текстовой области вместо консоли в javascript

#javascript #html #text

#javascript #HTML #текст

Вопрос:

немного запутался в этом. В настоящее время у меня есть некоторые переменные, которые выводятся на мою консоль при нажатии кнопки, но вместо этого я бы хотел, чтобы они печатались в текстовой области (в одной строке).

Вот мой код

 const freq = palindromes.map(palindrome => ({
  palindrome,
  freq: frequency(palindrome)
}));
console.log('all sentences:', sentences);
console.log('only palindromes:', palindromes);
console.log(freq); 
 <textarea id="output"></textarea> 

Который только в консоли показывает-

 [{
  freq: {
   a: 2,
   c: 2,
   e: 1,
   r: 2
},
  palindrome: "racecar"
}]
 

Вместо этого я хочу, чтобы она отображалась как [{freq: { a: 2, c: 2, e: 1,r: 2}, palindrome: "racecar"}] внутри текстовой области, которую я определил в html. Как мне это сделать?

Спасибо!

Комментарии:

1. Используется JSON.stringify() для преобразования массива в строку, затем присваивает ему значение текстовой области.

Ответ №1:

 document.getElementById('output').value = JSON.stringify('your variable')
 

Ответ №2:

Есть много способов реализовать то, что вы пытаетесь сделать, предполагая, что я правильно интерпретирую ваш вопрос. Похоже, вы хотите, чтобы текстовое поле или, в данном случае, с помощью тега textarea содержало некоторую строку символов, а не было пустым? Это можно сделать один раз при запуске или динамически с помощью кнопки или чего-то еще во время выполнения. Необходимый код выглядит примерно так:

 <textarea id="output">
default text.
</textarea>

<button type="button" onclick="upDateOutput()">Click to update text area</button>

<script>
function upDateOutput() {
  document.getElementById("output").value = "This is a new string.";
}
</script>