2023年9月18日 星期一

Almighty converter & Useful functions

# TextArea


My ID is p1

My ID is p2

*=already preloaded on this page

# 小工具 Utilities
  • *Object keys listing: objls( object_to_list_properties )
  • *Copy to clipboard: cbcopy( "text_to_copy" )
  • Download current page html
    Type `javascript:` at url and paste
  • Eruda Console: Paste as URL
    Type `javascript:` at url and paste
  • *jQuery
  • *Advanced alert and showlist:

# 數學 Mathematics
  • 排列Permutations: patt( array_of_items )
  • 組合Combinations: comb( array_of_items , number_of_selection )

2021年7月5日 星期一

Javascript object keys listing (no matter enumerable or not)

function objls(obj)
      {
          let objO=obj;
          let listK={};
          while(obj!=null)
            {
                Object.getOwnPropertyNames(obj).forEach(i=>{
                    listK[i]=1;
                });
                obj=obj.__proto__;
            }
          let ret=Object.keys(listK);
          let oname=objO.constructor.name;
          if(oname=="Number")
            ret.unshift(objO);
          else if(oname=="String")
            ret.unshift(objO.substr(0,1000));
          else if(oname=="Array")
            ret.unshift(objO.slice(0,10).join(","));

          ret.unshift(objO.constructor.name);
          return ret;
      }







2021年7月4日 星期日

Zip/Unzip folder in Node.js

First, install jszip by npm install jszip, then paste the following code

Then you can use genZip("folder/to/zip","abc.zip") and extractZip("abc.zip","folder/to/extract/to") as promises to zip/unzip your folder

You can also pass an Array to genZip's first argument to zip multiple files and folders

2021年1月14日 星期四

Copy to Clipboard

 function cbcopy(s){

  obj=document.createElement("textarea");

  obj.value=(s+"");

  document.body.append(obj);

  obj.select();

  document.execCommand("copy");

  obj.remove();

}




2020年6月23日 星期二

Web crawling By Puppeteer @ Node.js - Part 2/2, How to make it work on Android?


Outlines

1. Install ubuntu on Android by AndroNix
2. Install node.js and puppeteer
3. start web crawling
4. advanced adjustments to display chinese characters