Olá Douglas,
Não assisti essa aula, mas fica aqui um exemplo de como poderia ser feito. Existem outras maneiras também, você pode criar objetos e arrays para guardar essas informações e ter elas disponíveis no Javascript também.
Para os exemplos eu usei o seguinte HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>Exemplo Alura</title>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
</head>
<body>
<section class="container">
<table class="table table-bordered">
<thead>
<tr>
<th>Nome</th>
</tr>
</thead>
<tbody>
<tr>
<td class="table--username"></td>
</tr>
</tbody>
</table>
<button class="btn btn-default load--userdata">Clique para carregar os dados</button>
</section>
<script src="https://code.jquery.com/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
</body>
</html>
Aqui é uma maneira fazendo a checagem no DOM.
var $table = $('.table'),
$username = $('.table--username');
// função que retorna os dados via ajax (mockada para exemplo apenas)
var _returnUserData = function() {
return {
username: 'Douglas Oliveira Luciano'
}
};
// bind do evento de clique no botão
$('.load--userdata').on('click', function() {
// verifica se a div username está vazia
if ( $username.is(':empty') ) {
$username.text( _returnUserData().username );
}
else {
alert('Dados ja foram carregados.');
}
});
E aqui fazendo a checagem em uma variável que fica na memória
var $table = $('.table'),
$username = $('.table--username');
var _userdata = {
username: ''
};
var _returnUserData = function() {
return {
username: 'Douglas Oliveira Luciano'
}
};
$('.load--userdata').on('click', function() {
if ( ! _userdata.username ) {
var _username = _returnUserData().username;
$username.text( _username );
_userdata.username = _username;
}
else {
alert('Dados ja foram carregados.');
}
});
Att.