This is a javascript function to validate NRIC for Singapore residents, as well as for those holding work permit, S pass, EP and PR.
function validate(nric) {
if (nric.length != 9) {
return false;
}
var icArray = new Array(9);
for(i = 0; i < 9; i++) {
icArray[i] = nric.charAt(i);
}
icArray[1] *= 2;
icArray[2] *= 7;
icArray[3] *= 6;
icArray[4] *= 5;
icArray[5] *= 4;
icArray[6] *= 3;
icArray[7] *= 2;
var weight = 0;
for(i = 1; i < 8; i++) {
weight += parseInt(icArray[i]);
}
var offset=(icArray[0]==”T”||icArray[0]==”G”)?4:0;
var temp=(offset+weight)%11;
var st=Array(”J”,”Z”,”I”,”H”,”G”,”F”,”E”,”D”,”C”,”B”,”A”);
var fg=Array(”X”,”W”,”U”,”T”,”R”,”Q”,”P”,”N”,”M”,”L”,”K”);
var theAlpha;
if (icArray[0]==”S”||icArray[0]==”T”) { theAlpha=st[temp]; }
else if(icArray[0]==”F”||icArray[0]==”G”) { theAlpha=fg[temp]; }
if (icArray[8] != theAlpha) {
return false;
}
else {
return true;
}
}



Home