做者:Mehul Lakhanpal
譯者:前端小智
來源:dev
點贊再看,微信搜索
【大遷世界】關注這個沒有大廠背景,但有着一股向上積極心態人。本文
GitHub
https://github.com/qq44924588... 上已經收錄,文章的已分類,也整理了不少個人文檔,和教程資料。**
最近開源了一個 Vue 組件,還不夠完善,歡迎你們來一塊兒完善它,也但願你們能給個 star 支持一下,謝謝各位了。javascript
github 地址:https://github.com/qq44924588...前端
const input = 123; console.log(input + ''); // '123' console.log(String(input)); // '123' console.log(input.toString()); // '123'
const input = '123'; console.log(+input); // 123 console.log(Number(input)); // 123 console.log(parseInt(input)); // 123
const input = 1; // 方案1 -使用雙感嘆號(!!)轉換爲布爾值 console.log(!!input); // true // 方案2 - 使用 Boolean() 方法 console.log(Boolean(input)); // true
'false'
有問題const value = 'false'; console.log(Boolean(value)); // true console.log(!!value); // true // 最好的檢查方法 console.log(value === 'false');
null
是一個值,而undefined
不是一個值。null
就像一個空盒子,而undefined
沒有盒子。vue
const fn = (x = '默認值') => console.log(x); fn(undefined); // 默認值 fn(); // 默認值 fn(null); // null
若是傳遞null,則不採用默認值,而傳遞undefined
或不傳遞任何參數時,採用默認值。java
虛值:false
,0
, ""
,null
,undefined
和NaN
。git
真值:"Values"
,0"
,{}
,[]
。github
若是值不想被改變時,能夠使用 const
:json
const name = '前端小智'; name = '王大冶'; // 報錯 const list = []; list = [1]; // 報錯 const obj = {}; obj = { name: '前端小智' }; // 報錯
但用 const 聲明的引用類型,它裏面值是能夠被更改的:數組
const list = []; list.push(1); // 能夠工做 list[0] = 2; // 能夠工做 const obj = {}; obj['name'] = '前端小智'; // 能夠工做
// 雙等號 - 將兩個操做數轉換爲相同類型,再比較 console.log(0 == 'o'); // true // 三等號 - 不轉換爲相同類型 console.log(0 === '0'); // false
function downloadData(url, resourceId, searchTest, pageNo, limit) {} downloadData(...); // need to remember the order
更簡單的方法微信
function downloadData( { url, resourceId, searchTest, pageNo, limit } = {} ) {} downloadData( { resourceId: 2, url: "/posts", searchText: "WebDev" } );
const func = function() { console.log('a'); return 5; }; func();
能夠改寫成async
const func = () => (console.log('a'), 5); func();
const getState = (name) => ({name, message: 'Hi'});
set
轉換爲數組const set = new Set([1, 2, 1, 4, 5, 6, 7, 1, 2, 4]); console.log(set); // Set(6) {1, 2, 4, 5, 6, 7} set.map((num) => num * num); // TypeError: set.map is not a function
轉換爲數組
const arr = [...set]
const arr = [1, 2, 3]; console.log(typeof arr); // object console.log(Array.isArray(arr)); // true
cosnt obj = { name: "前端小智", age: 16, address: "廈門", profession: "前端開發", }; console.log(Object.keys(obj)); // name, age, address, profession
const height = 0; console.log(height || 100); // 100 console.log(height ?? 100); // 0
這個 ??
的意思是,若是 ??
左邊的值是 null
或者 undefined
,那麼就返回右邊的值。
map()
方法建立一個新數組,其結果是該數組中的每一個元素是調用一次提供的函數後的返回值。
const numList = [1, 2, 3]; const square = (num) => { return num * num } const squares = numList.map(square); console.log(squares); // [1, 4, 9]
const getData = async () => { try { setLoading(true); const response = await fetch( "https://jsonplaceholder.typicode.com/posts" ); const data = await response.json(); setData(data); } catch (error) { console.log(error); setToastMessage(error); } finally { setLoading(false); // 無論是否報錯,最後都會執行 } }; getData();
const response = { msg: "success", tags: ["programming", "javascript", "computer"], body: { count: 5 }, }; const { body: { count, unknownProperty = 'test' }, } = response; console.log(count, unknownProperty); // 5 'test'
代碼部署後可能存在的BUG無法實時知道,過後爲了解決這些BUG,花了大量的時間進行log 調試,這邊順便給你們推薦一個好用的BUG監控工具 Fundebug。
原文:https://dev.to/318097/18-tips...
文章每週持續更新,能夠微信搜索【大遷世界 】第一時間閱讀,回覆【福利】有多份前端視頻等着你,本文 GitHub https://github.com/qq449245884/xiaozhi 已經收錄,歡迎Star。