dojox/validate/isbn.js

  • Provides:

    • dojox.validate.isbn
  • dojox.validate.isValidIsbn

    • type
      Function
    • parameters:
      • value: (typeof String)
        An ISBN to validate
    • source: [view]
       var len, sum = 0, weight;
       if(!dojo.isString(value)){
        value = String(value);
       }
       value = value.replace(/[- ]/g,''); //ignore dashes and whitespaces
       len = value.length;


       switch(len){
        case 10:
         weight = len;
         // ISBN-10 validation algorithm
         for(var i = 0; i < 9; i++){
          sum += parseInt(value.charAt(i)) * weight;
          weight--;
         }
         var t = value.charAt(9).toUpperCase();
         sum += t == 'X' ? 10 : parseInt(t);
         return sum % 11 == 0; // Boolean
         break;
        case 13:
         weight = -1;
         for(var i = 0; i< len; i++){
          sum += parseInt(value.charAt(i)) * (2 + weight);
          weight *= -1;
         }
         return sum % 10 == 0; // Boolean
         break;
       }
       return false;
    • summary
      Validate ISBN-10 or ISBN-13 based on the length of value
    • return_summary
      Boolean
    • returns
      Boolean
  • dojox.validate.isbn

    • type
      Object
    • summary
  • dojox.validate

    • type
      Object
    • summary
  • dojox

    • type
      Object
    • summary