Подскажите пожалуйста, что я не так написал, почему не работает код?
Есть 2 поля input, в первое вписывается число, например 1 000, и в другом поле должно показаться число но прибавив к себе ещё число, например 100. Скрипт работает, но я хочу вывести с маской(пробелами), вот так 1 000 000.
Когда прописываю ещё 1 replace на "выравнивание/пробелы" текста так как мне нужно, скрипт работает если я вывожу только то что человек ввёл в первый input, а если я вывожу сложение двух чисел+выравнивание(маску), то мне пишет ошибку =((( Возможно супер тупо объяснил, но вот код :
<!DOCTYPE html>
<html>
<head>
<title>Main</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
</head>
<body>
<form action="" method="POST">
<input id="pole" type="text"><br>
<input id="txt" type="text" placeholder="Общее число"><br>
</form>
<script type="text/javascript">
$('#pole').keyup(function() {
var val = $('#pole').val(); //Получаем данные из input
var x = 80; // Хочу прибавить 80 в общий результат
var r = (val.replace(/\s/g, '') ); //Тут я убираю пробелы из input
var z = Number (r) + Number (x); //Тут я считаю то что ввёл человек + добавляю число 80
var full = (z.replace(/(\d)(?=(\d{3})+(\D|$))/g, '$1 ') ); //Тут я добавляю "маску/пробелы"
setTimeout(function() {
$('#txt').val(full); //Вставляю общее число в второй input
}, 2000);
});
</script>
</body>
</html>
Проблема с "var = full". В консоли пишет : (index):19 Uncaught TypeError: z.replace is not a function
Если я заменю в нём "z" на "val", то тогда выводится как нужно с пробелами (маской), но сложения не будет.
Заранее спасибо кто поможет с таким глупым вопросом, js не учил