function getRndItem(field) {
var index = Math.floor(field.length*Math.random())
return field[index];
}
function getRandomIon() {
return getRndItem(ionts);
}
function getRandomElement() {
var index = Math.floor(elements.length*Math.random())
return elements[index];
}
function getFormula(ion) {
var out = ion.label + "" + ion.charge.replace("-","−") + ""
return out;
}
function getValenceCount(element) {
var valence = element.valence.trim();
if (valence == "") return 0;
var orbitals = valence.split(/\s+/);
var count = 0;
for (var i = 0; i < orbitals.length; i++) {
var orbCount = parseInt(orbitals[i].substring(2), 10);
count += orbCount;
}
return count;
}
function getFullCount(ion) {
return getElCount(ion.full);
}
function getElCount(text) {
var orbitals = text.trim().split(/\s+/);
var count = 0;
for (var i = 0; i < orbitals.length; i++) {
var orbCount = parseInt(orbitals[i].substring(2), 10);
count += orbCount;
}
return count;
}
function getFullConfig(ion) {
return getHTMLFull(ion)
}
function getHTMLValence(element) {
return getHTMLElconfig(element.valence);
}
function getHTMLFull(element) {
return getHTMLElconfig(element.full);
}
function getHTMLElconfig(text) {
var orbitals = text.trim().split(/\s+/);
var out = [];
for (var i = 0; i < orbitals.length; i++) {
out.push(orbitals[i].replace(/(\d[spdfg])(\d+)/g, "$1$2"));
}
return out.join(" ");
}