掃二維碼與項(xiàng)目經(jīng)理溝通
我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流

xijs 是一款開(kāi)箱即用的 js 業(yè)務(wù)工具庫(kù), 聚集于解決業(yè)務(wù)中遇到的常用函數(shù)邏輯問(wèn)題, 幫助開(kāi)發(fā)者更高效的開(kāi)展業(yè)務(wù)開(kāi)發(fā)。
接下來(lái)就和大家一起分享一下v1.2.1 版本的更新內(nèi)容以及后續(xù)的更新方向。
該模塊主要由 WangLei802 貢獻(xiàn), 添加內(nèi)容如下:
使用方式如下:
import { bubbleSort } from 'xijs';
let arr = [1, 3, 2, 8, 4];
let objArr = [
{ name: '8', age: 18 },
{ name: '3', age: 13 },
{ name: '5', age: 15 },
{ name: '2', age: 12 },
];
// bubbleSort(arr,arrKey,orderby) 參數(shù)說(shuō)明: 1、arr => 簡(jiǎn)單數(shù)組or對(duì)象數(shù)組 2、arrKey => 對(duì)象數(shù)組key 3、orderby => 排序方式(默認(rèn)升序('asc')、降序('desc'))
// 簡(jiǎn)單數(shù)組冒泡排序 --> 升序
bubbleSort(arr); // -> [1,2,3,4,8]
// 簡(jiǎn)單數(shù)組冒泡排序 --> 降序
bubbleSort(arr,'','desc'); // -> [8,4,3,2,1]
// 對(duì)象數(shù)組冒泡排序 注:默認(rèn)升序
bubbleSort(objArr,'age'); // -> [{ name: '2', age: 12 },{ name: '3', age: 13 },{ name: '5', age: 15 }...]
// 對(duì)象數(shù)組冒泡排序 --> 降序
bubbleSort(objArr,'age','desc'); // -> [{ name: '8', age: 18 },{ name: '5', age: 15 },{ name: '3', age: 13 }...]
import { quickSort } from 'xijs';
let arr = [1, 3, 2, 8, 4];
let objArr = [
{ name: '8', age: 18 },
{ name: '3', age: 13 },
{ name: '5', age: 15 },
{ name: '2', age: 12 },
];
// quickSort(arr,key) 參數(shù)說(shuō)明: 1、arr => 簡(jiǎn)單數(shù)組or對(duì)象數(shù)組 2、key => 可選參數(shù)對(duì)象數(shù)組key
// 簡(jiǎn)單數(shù)組快速排序
quickSort(arr); // -> [1,2,3,4,8]
// 對(duì)象數(shù)組快速排序
quickSort(objArr,'age'); // -> [{ name: '2', age: 12 },{ name: '3', age: 13 },{ name: '5', age: 15 }...]
該模塊主要由 EasyRo 貢獻(xiàn), 添加內(nèi)容如下:
這幾個(gè)方法對(duì)于可視化項(xiàng)目的設(shè)計(jì)和開(kāi)發(fā)非常有價(jià)值, 后續(xù)會(huì)在幾何計(jì)算模塊中開(kāi)拓更多常用函數(shù), 供大家輕松使用. 接下來(lái)介紹一下具體用法:
import { judgePointInCircle } from 'xijs';
// 判斷中心在(3,4) 坐標(biāo)內(nèi), 半徑為5的圓上是否存在(4,6) 這個(gè)點(diǎn)
const res = judgePointInCircle(
{
center: [3, 4],
r: 5,
},
4,
6,
);
console.log(res); // -> true
該算法運(yùn)用了很多幾何和代數(shù)知識(shí), 我之前在設(shè)計(jì)開(kāi)源項(xiàng)目vue3幾何畫板 中也使用了大量幾何判斷, 感興趣的朋友可以參考一下:
github地址: https://gitee.com/lowcode-china/euryd。
接下來(lái)我們跑一下單元測(cè)試, 對(duì)整個(gè)庫(kù)做一個(gè)全面的掃描:
整個(gè)測(cè)試一共花了10s, 測(cè)試全部通過(guò), 各位小伙伴們可以放松食用。
為了方便大家更好的了解 xijs 這個(gè)庫(kù), 我列一個(gè)完整的目錄結(jié)構(gòu)供大家參考, 也可以直接用 xijs 的在線文檔中去參考學(xué)習(xí)。

我們?cè)谖⑿派?4小時(shí)期待你的聲音
解答本文疑問(wèn)/技術(shù)咨詢/運(yùn)營(yíng)咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流