Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function toBin1(num){
- return [...num.toString(2)].map(e => +e)
- }
- function toBin2(num){
- let arr = [];
- for(let i = 7; i >= 0; i--){
- if(num - 2**i >= 0){
- arr.push(1)
- num -= 2**i
- } else {
- arr.push(0)
- }
- }
- while(arr[0] === 0){
- arr.shift()
- }
- return arr
- }
- function toBin3(num) {
- let str = "";
- do {
- str = `${num % 2}${str}`;
- num >>= 1;
- } while (num);
- return str;
- }
- for(let i = 0; i < 10000; i++);
- console.time("1");
- for(let i = 0; i < 1000; i++) toBin1(i);
- console.timeEnd("1");
- console.time("2");
- for(let i = 0; i < 1000; i++) toBin2(i);
- console.timeEnd("2");
- console.time("3");
- for(let i = 0; i < 1000; i++) toBin3(i);
- console.timeEnd("3");
RAW Paste Data
Copied