Changeset 7451
- Timestamp:
- 06/25/08 16:37:29 (2 months ago)
- Files:
-
- trunk/openlayers/lib/OpenLayers/BaseTypes.js (modified) (1 diff)
- trunk/openlayers/tests/BaseTypes.html (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/openlayers/lib/OpenLayers/BaseTypes.js
r6829 r7451 135 135 } 136 136 return tokens.join(""); 137 }, 138 139 /** 140 * Property: OpenLayers.String.numberRegEx 141 * Used to test strings as numbers. 142 */ 143 numberRegEx: /^([+-]?)(?=\d|\.\d)\d*(\.\d*)?([Ee]([+-]?\d+))?$/, 144 145 /** 146 * APIFunction: OpenLayers.String.isNumeric 147 * Determine whether a string contains only a numeric value. 148 * 149 * Examples: 150 * (code) 151 * OpenLayers.String.isNumeric("6.02e23") // true 152 * OpenLayers.String.isNumeric("12 dozen") // false 153 * OpenLayers.String.isNumeric("4") // true 154 * OpenLayers.String.isNumeric(" 4 ") // false 155 * (end) 156 * 157 * Returns: 158 * {Boolean} String contains only a number. 159 */ 160 isNumeric: function(value) { 161 return OpenLayers.String.numberRegEx.test(value); 137 162 } 138 163 trunk/openlayers/tests/BaseTypes.html
r6724 r7451 141 141 ); 142 142 143 } 144 145 function test_String_isNumeric(t) { 146 var cases = [ 147 {value: "3", expect: true}, 148 {value: "+3", expect: true}, 149 {value: "-3", expect: true}, 150 {value: "3.0", expect: true}, 151 {value: "+3.0", expect: true}, 152 {value: "-3.0", expect: true}, 153 {value: "6.02e23", expect: true}, 154 {value: "+1.0e-100", expect: true}, 155 {value: "-1.0e+100", expect: true}, 156 {value: "1E100", expect: true}, 157 {value: null, expect: false}, 158 {value: true, expect: false}, 159 {value: false, expect: false}, 160 {value: undefined, expect: false}, 161 {value: "", expect: false}, 162 {value: "3 ", expect: false}, 163 {value: " 3", expect: false}, 164 {value: "1e", expect: false}, 165 {value: "1+e", expect: false}, 166 {value: "1-e", expect: false} 167 ]; 168 t.plan(cases.length); 169 170 var func = OpenLayers.String.isNumeric; 171 var obj, val, got, exp; 172 for(var i=0; i<cases.length; ++i) { 173 obj = cases[i]; 174 val = obj.value; 175 exp = obj.expect; 176 got = func(val); 177 t.eq(got, exp, "'" + val + "' returns " + exp); 178 } 179 143 180 } 144 181
