當前位置:菜譜大全網 - 菜譜 - Web前端工程師應掌握的JavaScript代碼片段(1)

Web前端工程師應掌握的JavaScript代碼片段(1)

今天邊肖想和大家分享的文章是關於Web前端工程師應該掌握的JavaScript代碼片段(1)。讓我們來看看和邊肖壹起在網絡前端工作的朋友們。希望這篇文章能對在web前端工作的朋友有所幫助。

1,Anagramsofstring(有重復項)

使用遞歸。對於給定字符串中的每個字母,會為該字母創建壹個縱橫字謎。使用map()將字母與拼圖的每個部分組合起來,然後使用reduce()將所有拼圖組合成壹個數組。在最基本的情況下,字符串長度等於2或1。

constant agrams = str = & gt;{

if(字符串長度)-& gt;2

將每個單詞的第壹個字母大寫

使用replace()匹配每個單詞的第壹個字符,使用toUpperCase()將其大寫。

constcapitalizeEveryWord = str = & gt;str.replace(/\b,1)-& gt;三

7.當前URL

使用window.location.href獲取當前URL。

constcurrentUrl = _ = & gtwindow . location . href;

//current URL()-& gt;''

8、咖喱

使用遞歸。如果提供的參數(args)數量足夠,則調用傳遞函數f,否則返回簡化的函數f。

constcurry=(fn,arity=fn.length...args)= >

參數數量

fn(...參數)

:curry.bind(null,fn,arity,...args);

//curry(math . pow)(2)(10)-& gt;1024

//curry(Math.min,3)(10)(50)(2)-& gt;2

9、Deepflattenarray

使用遞歸,並使用reduce()獲取所有不是數組的元素。平面是壹個數組。

constdeepFlatten = arr = & gt

arr.reduce((a,v)= & gt;a.concat(Array.isArray(v)?deepFlatten(v):v),

,5])-& gt;

10,數組之間的差

從B創建壹個集合,然後在A上使用Array.filter(),只保留B中不包含的值..

constdifference=(a,b)= >{ consts = newSet(b);返回.過濾器(x

= & gt!s . has(x));};

//差異(,)-& gt;

17,過濾數組中的非唯壹值

對只包含唯壹值的數組使用Array.filter()。

constfilterNonUnique = arr = & gtarr . filter(I = & gt;arr.indexOf(i)===

arr . lastindexof(I));

//filterNonUnique()-& gt;

18,展平數組

使用reduce()獲取數組中的所有元素,並使用concat()使它們變平。

constflatten = arr = & gtarr.reduce((a,v)= & gt;a.concat(v),)-& gt;

19,從數組中獲取最大值

使用Math.max()和spread運算符(...)來獲取數組中的最大值。

constarrayMax = arr = & gtMath.max(...arr);

//array max()-& gt;10

20.從數組中獲取最小值

使用Math.min()和spread運算符(...)來獲取數組中的最小值。

constarrayMin = arr = & gtMath.min(...arr);

//array min()-& gt;1

21,獲取滾動位置

如果定義,請使用pageXOffset和pageYOffset,否則使用scrollLeft和scrollTop,可以省略el使用window的默認值。

constgetScrollPos =(El = window)= & gt;

({x:(el.pageXOffset!= =未定義)?el.pageXOffset:el.scrollLeft,

y:(el.pageYOffset!= =未定義)?El . pageyoffset:El . scroll top });

//getScrollPos()-& gt;{x:0,y:200}

22、最大公約數(GCD)

使用遞歸。基本情況是當y等於0時。在這種情況下,返回x。否則,返回y的GCD和x/y的其余部分。

constgcd=(x,y)= & gt;!y?x:gcd(y,x % y);

//gcd(8,36)-& gt;四

23、頭牌

返回數組[0]

consthead = arr = & gtarr[0];

//head()-& gt;1

24、列表初始化

返回arr.slice(0,-1)

constitinitial = arr = & gt;arr.slice(0,-1);

//initial()-& gt;

以上是邊肖今天為大家分享的關於JavaScript代碼片段(1)的文章。希望這篇文章能對從事Web前端工作的朋友有所幫助。想了解更多web前端的,想了解後面代碼片段的小夥伴,記得關註官網,北大青鳥web的培訓。