Не работает код объекта
После нажатия кнопки вся страница просто заменяется на белую
function print (text) {
document.write();
}
var Name, Age;
var y = new Date;
function userValue (name, age, dateOfBirth) {
this.name = name;
this.age = age;
this.dateOfBirth = y.getFullYear() - age;
}
function conf() {
document.getElementById ('inp1').value = Name;
document.getElementById ('inp2').value = Age;
var user1 = new userValue (Name, Age);
print ('Your name is ' + user1.Name);
print ('Your age is ' + user1.Age);
print ('You were born in' + user1.dateOfBirth);
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<input type="text" placeholder="Input your name" id="inp1">
<input type="text" placeholder="Input your age" id="inp2">
<button onclick="conf(this)">Ok</button>
<script src="script.js"></script>
</body>
</html>
Ответы (1 шт):
Автор решения: Евгений
→ Ссылка
Всем потому что в функции print находится метод document.write(), который ничего не принимает. Исправьте на document.write(text) и все будет гуд. На странице все появится, но переменные которые вы передаете будут undefined и NaN
Дополняю: так как js чувствителен к регистру, данные которые вы передаете в функцию print идут как undefined. Достаточно посмотреть что находится в объекте user1, в нем все свойства с маленькой буквы, а значит вот так будет правильно:
print ('Your name is ' + user1.name);
print ('Your age is ' + user1.age);
print ('You were born in' + user1.dateOfBirth);