js 實用小技巧
阿新 • • 發佈:2021-11-02
js 判斷值大於-1
~
:位非--類似取負數並-1- -1 = -(-1) - 1
let str = "index";
if(~str.indexOf('r')){}
js 去除資料的最外層引號
new Function()
:在使用時,編譯器會將引數中的字串當作正常的指令碼程式碼來執行。
new Function('return ' + '0.34')(); //0.34
new Function('return ' + '{"name":"admin","age":"18"}')(); //{name:'admin',age:'18'}
js 保留一定小數位
toFixed(Number)
100.toFixed(2); //'100.00'
js 轉換為二進位制
toString(Number)
:
Number(10).toString(2); //'1010'
js 拷貝物件/陣列
...
: 展開語法(Spread syntax), 可以在函式呼叫/陣列構造時, 將陣列表示式或者string在語法層面展開
let obj = {'name':'admin','age':18,'hobbies':[{'name':'run'},{'name':'sing'}]}; let copyObj = {...obj}; // {name: 'admin', age: 18, hobbies: Array(2)} let arr = [{'name':'admin1','age':18,'tags':{'name':'young'}},{'name':'admin2','age':18,'tags':{'name':'young'}}]; let copyArr = [...arr]; // (2)[{…}, {…}] let arr1 = [{'name':'admin1','age':18,'hobbies':[{'name':'run'},{'name':'sing'}]},{'name':'admin2','age':18,'hobbies':[{'name':'run'}]}]; let copyArr1 = [...arr]; // (2)[{…}, {…}]
js 二進位制轉為十進位制
parseInt(二進位制字串,2)
:
parseInt('1010',2); //10
js 時間數不足兩位前面補零
padStart
:
'3'.padStart(2,'0'); //'03'