busik,
проверку на checked, попробуйте добавить сами.
<!doctype html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<form>
<div class="question">
Вопрос 1
<input type="radio" name="q1" value="Вариант 1" checked="checked">
<input type="radio" name="q1" value="Вариант 2">
<input type="radio" name="q1" value="Вариант 3">
</div>
<div class="question">
Вопрос 2
<input type="checkbox" name="q2" value="Вариант 1">
<input type="checkbox" name="q2" value="Вариант 2">
<input type="checkbox" name="q2" value="Вариант 3" checked="checked">
<input type="checkbox" name="q2" value="Вариант 4" checked="checked">
</div>
<script>
const data = Array.from(document.querySelectorAll('.question'), div => {
const checked = div.querySelectorAll(':checked');
return {name: checked[0].name , value: Array.from(checked, ({value}) => value).join(',')}
})
document.write(JSON.stringify(data, "", 4))
</script>
</form>
</body>
</html>