Js object array 多條件篩選且條件可能為空

 最近在工作上遇到需要多條件篩選,且條件為空就不進行判斷,花了一點時間才研究出怎麼做以下是解法const originItems = [{id:1, live:true, name:"test1",color:"red",size:"large"}, {id:2, live:true,name:"test2",color:"blue",size:"large"}, {id:3, live:true,name:"test3",color:"green",size:"medium"}, {id:4, live:false, name:"test4",color:"red",size: "small"}, {id:5, live:false, name:"test5",color:"blue",size: "small"}, {id:6, live:false,...

useEffect的三種dependency差異

第一種方式因為傳入的dependency是empty array所以只會執行一次 useEffect(() =>{console.log("Hi)},[])第二種方式當每一次dependency變動時就會執行一次useEffectuseEffect(() =>{console.log("Hi)},[dependency])第三種方式會變成無限迴圈...慎用useEffect(() =>{console.log("Hi)...

Js轉換時間格式為YYYY-MM-DD HH:MM:SS

身為前後端都要寫的工程師,時間處理總是會碰到的以下是簡單的方法將Js 的Date 轉為 YYYY-MM-DD HH:MM:SS 格式的寫法const d = new Date()const formatedTimestamp = (d)=> { const date = d.toISOString().split('T')[0]; const time = d.toTimeString().split(' ')[0]; return `${date} ${time...

Css Combinators

Css Combinators 有以下四種descendant selector (space)child selector (>)adjacent sibling selector (+)general sibling selector (~)以這個html為例,html都是巢狀,所以是一層包一層的結果,如果我們想要選擇下層的標籤內容,可以使用descendant selector  語法是:在上層跟下層中間加上一個”空白”<!DOCTYPE html><html><head> <style> div...

Css Selector

 範例如下index.html<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>uHost</title> <link rel="shortcut icon" href="favicon.png"> <link rel="stylesheet" href="index.css"></head><body><main> <section> <h1>Get the freedom...

terminal 基本操作 + git (二)

快速複習一下上一章教過的指令以上的步驟是:創造一個叫second.txt的檔案 --> 編輯second.txt --> 加入stage --> commit 到repository之後輸入git log可以看到我們操作的歷史紀錄每一個commit後面都會有一串id可以試著下指令 git checkout 第一個commit的id (以我這邊的例子就是972b76e15fb15bcc88ff0be7ec2da43df2745b92)這時候就代表到了第一次commit時的status用ls查看會發現只剩一開始commit的檔案用git log查看會發現log也恢復到第一次commit的樣子然後再輸入...

terminal 基本操作 + git (一)

 ls:列出目前資料夾內的檔案與資料夾mkdir:創造資料夾cd:移動到資料夾移動到我們剛創造的git-basics資料夾後輸入code . 就可以直接在這個資料夾開啟vs code輸入git init,在目錄建立.git資料夾輸入git status 可以看到目前git的狀態目前還沒有任何的commit  之後輸入touch test.txt 新增一個叫做test.txt的檔案再輸入vim test.txt 使用vim來編輯檔案進入vim以後畫面會像這樣請按下i 進入編輯模式 這時畫面左下角會有一個insert就可以開始輸入文字了在畫面輸入 Hello...

First App in React+Typescript

在CMD輸入以下指令mkdir type_react_democd type_react_demonpm init之後會跳出這些選項 都直接按Enter就好package name: (type_react_demo)version: (1.0.0)description: demoproject_typescript_reactentry point: (index.js)test command:git repository:keywords:author:license: (ISC)About to write to C:\Users\samchen\typereact\type_react_demo\package.json:{ ...