日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

实用js片段

發布時間:2024/9/27 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 实用js片段 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

字符串排序

const arr=[{name:'ccc'},{name:'bbb'},{name:'ccc'}] arr.sort((a,b)=>a.name.localeCompare(b.name))

從數組中過濾出虛假值

const arr=[1,2,'',undefined] const arr1 = arr.filter(v=>v) //[1,2]

刪除重復值

const arr=[1,2,1,3] const arr1 = [...new Set(arr)] //[1,2,3]

創建計數器對象或映射

let string = 'kapilalipak';const table = {};for (let char of string) {table[char] = table[char] + 1 || 1;} // 輸出{ k: 2, a: 3, p: 2, i: 2, l: 2 } //或者 const countMap = new Map();for (let i = 0; i < string.length; i++) {if (countMap.has(string[i])) {countMap.set(string[i], countMap.get(string[i]) + 1);} else {countMap.set(string[i], 1);}} // 輸出 Map(5) {"k" => 2, "a" => 3, "p" => 2, "i" => 2, "l" => 2}

可選鏈

const user = {employee: {name: "Kapil"} }; user.employee?.name; // 輸出: "Kapil" user.employ?.name; // 輸出: undefined user.employ.name // 輸出: VM21616:1 Uncaught TypeError: Cannot read property 'name' of undefined

打亂數組

const list = [1, 2, 3, 4, 5, 6, 7, 8, 9]; list.sort(() => {return Math.random() - 0.5; }); // 輸出 (9) [2, 5, 1, 6, 9, 8, 4, 3, 7] // Call it again (9) [4, 1, 7, 5, 3, 8, 2, 9, 6]

空合并算子

const foo = null ?? 'my school'; // 輸出: "my school"const baz = 0 ?? 42; // 輸出: 0

Rest & Spread 運算符

function myFun(a, b, ...manyMoreArgs) {return arguments.length; } myFun("one", "two", "three", "four", "five", "six");// 輸出: 6 const parts = ['shoulders', 'knees']; const lyrics = ['head', ...parts, 'and', 'toes']; lyrics; // 輸出: (5) ["head", "shoulders", "knees", "and", "toes"]

默認參數

const search = (arr, low=0,high=arr.length-1) => {return high; } search([1,2,3,4,5]);// 輸出: 4

將十進制轉換為二進制或十六進制

const num = 10;num.toString(2); // 輸出: "1010" num.toString(16); // 輸出: "a" num.toString(8); // 輸出: "12"

使用解構賦值交換值

let a = 5; let b = 8; [a,b] = [b,a][a,b] // 輸出 (2) [8, 5]

Object屬性轉成屬性數組

使用Object.entries(),Object.keys()和Object.values() const obj = { a: 1, b: 2, c: 3 };Object.entries(obj); // 輸出 (3) [Array(2), Array(2), Array(2)] 0: (2) ["a", 1] 1: (2) ["b", 2] 2: (2) ["c", 3] length: 3Object.keys(obj); (3) ["a", "b", "c"]Object.values(obj); (3) [1, 2, 3]

當有多個參數的時候需要獲取event默認參數

function eventTest(a,b){var event = window.event || arguments.callee.caller.arguments[0]//target 就是這個對象target = event.srcElement||event.target,//這個對象的值targetValue = event.target.value; }

清空對象的值(兩種辦法)

場景:表單填寫,提交之后表單中的數據清空。

  • 第一種for in
let obj = {a:1,b:2}; for(let key in obj){obj[key]=''; }
  • 第二種處理對象之前提前存一條(需要深拷貝)
let obj1=JSON.parse(JSON.stringify(obj)) // 之后就push數據 obj=obj1 創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的实用js片段的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。