Skip to content

Commit 07aed5e

Browse files
committed
feat: secure and fix numeric conversions for radioactive decay.
1 parent 62c3097 commit 07aed5e

1 file changed

Lines changed: 18 additions & 6 deletions

File tree

online/radioactive-decay.html

Lines changed: 18 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -571,6 +571,8 @@ <h2>Notes:</h2>
571571

572572
let elementSymbol = getElementSymbolWithAtomicNumber(currentZ);
573573

574+
if (!elementSymbol) return null;
575+
574576
return { element: elementSymbol, full_name: getElementNameWithSymbol(elementSymbol), Z: currentZ, A: currentA };
575577

576578
}
@@ -591,13 +593,19 @@ <h2>Notes:</h2>
591593

592594
let result = emulateDecayModes(currentZ, currentA, modes[i]);
593595

594-
nucleusSteps.push(result);
596+
if (result) {
597+
598+
nucleusSteps.push(result);
595599

596-
currentElement = result.element;
600+
currentElement = result.element;
597601

598-
currentZ = result.Z;
602+
currentZ = result.Z;
599603

600-
currentA = result.A;
604+
currentA = result.A;
605+
606+
}
607+
608+
else break;
601609

602610
}
603611

@@ -865,9 +873,11 @@ <h2>Notes:</h2>
865873

866874
function radioactiveDecay() {
867875

876+
let resultMass;
877+
868878
let elem = $('#element-id').val();
869879

870-
let radioisotopeIndex = $('#radioisotope-id').val();
880+
let radioisotopeIndex = Number($('#radioisotope-id').val());
871881

872882
let decayModes = $('#decay-mode-id').val();
873883

@@ -907,6 +917,8 @@ <h2>Notes:</h2>
907917

908918
let lastIndex = getRadioisotopeIndexWithSymbol(lastNucleus.element, lastNucleus.A);
909919

920+
if (lastIndex === false) resultMass = null;
921+
910922
let isDecayChain = hasChaine(modes);
911923

912924
if (isDecayChain) {
@@ -931,7 +943,7 @@ <h2>Notes:</h2>
931943

932944
let parentMass = getAtomicMassWithSymbol(Number(radioisotopeIndex), elem);
933945

934-
let resultMass = getAtomicMassWithSymbol(lastIndex, lastNucleus.element);
946+
resultMass = getAtomicMassWithSymbol(lastIndex, lastNucleus.element);
935947

936948
$("#info-1").html(`<i class="fa-solid fa-square point"></i> Admet comme masse atomique du noyau parent: <span class="color-yellow alone-bold">${!isNaN(parentMass) ? `≈ ${parentMass} uma` : 'Inconnue'}</span>`);
937949

0 commit comments

Comments
 (0)