| var createTypedArray = (function(){ |
| function createRegularArray(type, len){ |
| var i = 0, arr = [], value; |
| switch(type) { |
| case 'int16': |
| case 'uint8c': |
| value = 1; |
| break; |
| default: |
| value = 1.1; |
| break; |
| } |
| for(i = 0; i < len; i += 1) { |
| arr.push(value); |
| } |
| return arr; |
| } |
| function createTypedArray(type, len){ |
| if(type === 'float32') { |
| return new Float32Array(len); |
| } else if(type === 'int16') { |
| return new Int16Array(len); |
| } else if(type === 'uint8c') { |
| return new Uint8ClampedArray(len); |
| } |
| } |
| if(typeof Uint8ClampedArray === 'function' && typeof Float32Array === 'function') { |
| return createTypedArray |
| } else { |
| return createRegularArray |
| } |
| }()) |
| |
| function createSizedArray(len) { |
| return Array.apply(null,{length:len}) |
| } |