Message codés d'espion
HTML
<script src="http://d3js.org/d3.v3.min.js"></script>
Message<br />
<input id="enter" size="60" /><br />
Key<br />
<input id="key" size="10" /><br />
<button id="encode">Encode</button>
<button id="decode">Decode</button>
CSS
*{
font-family: Monospace;
}
input, button{
border: 1px solid silver;
background-color: white;
margin-bottom: 20px;
}
JavaScript
var secretKey = 1;
var message = "Ennio je t'aime";
var encoded = encode(message, true, secretKey);
var decoded = encode(encoded, false, secretKey);
console.log('Message: ' + message);
console.log('Encoded: ' + encoded);
console.log('Decoded: ' + decoded);
function encode(_message, _bool, _secretKey){
var mult = _bool? 1 : -1;
var result = _message.split('')
.map(function(d, i){
return String.fromCharCode(((d).charCodeAt(0) + (_secretKey * mult)));
}).join('');
return result;
}
d3.select('#encode').on('click', function(d, i){
var secretKey = d3.select('#key').node().value;
var inputBox = d3.select('#enter').node();
var inputMessage = inputBox.value;
var encodedMessage = encode(inputMessage, true, secretKey);
inputBox.value = encodedMessage;
});
d3.select('#decode').on('click', function(d, i){
var secretKey = d3.select('#key').node().value;
var inputBox = d3.select('#enter').node();
var inputMessage = inputBox.value;
var encodedMessage = encode(inputMessage, false, secretKey);
inputBox.value = encodedMessage;
});