- vừa được xem lúc

Một số JavaScript Snippet hữu dụng - Phần 3

0 0 9

Người đăng: Hero Gustin

Theo Viblo Asia

Tiếp tục sersie về JS snippets. Cùng tìm hiểu thôi! Phần 2 mọi người có thể xem ở đây nhé!

42. isAnagram

Kiểm tra một chuỗi cụ thể có phải là một ký tự đảo ngữ với một chuỗi khác hay không.

const isAnagram = (str1, str2) => { const normalize = str => str .toLowerCase() .replace(/[^a-z0-9]/gi, '') .split('') .sort() .join(''); return normalize(str1) === normalize(str2);
}; isAnagram('sport', 'opstr'); // true
isAnagram('sport', 'opstra'); // flase

43. isBrowser

Kiểm tra môi trường đang chạy hiện tại có phải là trình duyệt hay không. Tránh lỗi khi chạy front-end trên server (Node).

const isBrowser = () => ![typeof window, typeof document].includes('undefined'); isBrowser(); // true (browser)
isBrowser(); // false (Node)

44. isBrowserTabFocused

Kiểm tra tab của trình duyệt có đang được focus không.

const isBrowserTabFocused = () => !document.hidden; isBrowserTabFocused(); // true

45. isLowerCase

Kiểm tra chuỗi có phải chữ thường không

const isLowerCase = str => str === str.toLowerCase(); isLowerCase('abc'); // true
isLowerCase('_@.com$'); // true
isLowerCase('_@.com'); // false

46. isUpperCase

Kiểm tra chuỗi có phải chữ in hoa không

const isUpperCase = str => str === str.toUpperCase(); isUpperCase('ABC'); // true
isLowerCase('_@.com$'); // true
isLowerCase('_@.com'); // false

47. isNil

kiểm tra một giá trị là null hay undefined.

const isNil = val => val === undefined || val === null; isNil(null); // true
isNil(undefined); // true
isNil(1); // false

48. maxN

Return n phần tử lớn nhất từ một mảng. Nếu n lớn hơn hoặc bằng độ dài của mảng, nó sẽ trả về danh sách ban đầu được sắp xếp theo thứ tự giảm dần.

const maxN = (arr, n = 1) => [...arr].sort((a, b) => b - a).slice(0, n); maxN([1, 2, 3]); // [3]
maxN([1, 2, 3], 2); // [3,2] 

49. minN

Return n phần tử nhỏ nhất từ một mảng. Nếu n lớn hơn hoặc bằng độ dài của mảng, nó sẽ trả về danh sách ban đầu được sắp xếp theo thứ tự tăng dần.

const maxN = (arr, n = 1) => [...arr].sort((a, b) => b - a).slice(0, n); maxN([1, 2, 3]); // [1]
maxN([1, 2, 3], 2); // [1,2] 

50. radsToDegrees

Convert từ radian sang độ.

const radsToDegrees = rad => (rad * 180.0) / Math.PI; radsToDegrees(Math.PI / 2); // 90

51. Random mã màu Hexadecimal

const randomHexColorCode = () => { let n = (Math.random() * 0xfffff * 1000000).toString(16); return '#' + n.slice(0, 6);
}; randomHexColorCode(); // #3c3834

52. randomIntegerInRange

Random một số nguyên ngẫu nhiên trong một phạm vi được chỉ định.

const randomIntegerInRange = (min, max) => Math.floor(Math.random() * (max - min + 1)) + min; randomIntegerInRange(0, 5); // 4

53. randomNumberInRange

Random một số ngẫu nhiên trong một phạm vi được chỉ định.

const randomNumberInRange = (min, max) => Math.random() * (max - min) + min; randomNumberInRange(2, 10); // 8.678929973625086

54. scrollToTop

cuộn lên đầu trang hiện tại.

const scrollToTop = () => { const c = document.documentElement.scrollTop || document.body.scrollTop; if (c > 0) { window.requestAnimationFrame(scrollToTop); window.scrollTo(0, c - c / 8); }
}; scrollToTop();

55. setStyle

Set thuộc tính css

cconst setStyle = (el, ruleName, val) => (el.style[ruleName] = val); setStyle(document.querySelector('p'), 'font-size', '20px');
// Thẻ <p> đầu tiên sẽ có font-size là 20px

56. clone

Clone 1 object

const clone = obj => Object.assign({}, obj); const a = { x: 'a', y: 1 };
const b = clone(a);
console.log(b); // { x: 'a', y: 1 }

57. sleep

Delay thực thi một hàm không đồng bộ bằng cách đưa vào trạng thái ngủ.

const sleep = ms => new Promise(resolve => setTimeout(resolve, ms)); async function sleepyWork() { console.log("I'm gonna sleep for 1 second."); await sleep(1000); console.log('I woke up after 1 second.');
}

58. smoothScroll

Cuộn đến phần tử được gọi

const smoothScroll = element => document.querySelector(element).scrollIntoView({ behavior: 'smooth' }); smoothScroll('#myId'); // scroll đến id là myId
smoothScroll('.myClass'); // scroll đến phần tử đầu tiên có class là myClass

59. sortCharactersInString

Sắp xếp các ký tự trong một chuỗi theo thứ tự bảng chữ cái.

const sortCharactersInString = str => [...str].sort((a, b) => a.localeCompare(b)).join(''); sortCharactersInString('protocol'); // 'cloooprt'

60. stripHTMLTags

Xóa các thẻ html trong chuỗi

const stripHTMLTags = str => str.replace(/<[^>]*>/g, ''); stripHTMLTags('<p><em>viblo</em> <strong>may</strong> <i>fest</i></p>'); // 'viblo may fest'

61. splitLines

Tách một chuỗi nhiều dòng thành một mảng các dòng.

const splitLines = str => str.split(/\r?\n/); splitLines('This\nis viblo\nmay\nfest.\n'); // ['This', 'is viblo', 'may', 'fest.' , '']

Đến đây kết thúc phần 3 của bài. To be continue?

Thanks for reading?

Bình luận

Bài viết tương tự

- vừa được xem lúc

2021, chúng ta cần tối ưu hóa việc tải hình ảnh trên web như nào?

Rất chào các bạn,. Như các bạn đã biết, trong kỉ nguyên công nghệ, song song với sự sinh ra dày đặc của các trang web mới cũng là sự biến mất của những trang web "lạc hậu" hay hoạt động kém hiệu quả.

0 0 56

- vừa được xem lúc

Cách mình "hack" được vào hẹ thống của SMAS để xem điểm.

Cách mà mình "hack" được vào hệ thống của SMAS. Thật ra dùng từ hack cũng không đúng lắm, chỉ là một vài trick để lừa hệ thống mà thôi.

0 0 146

- vừa được xem lúc

Giải thích một số JAVASCRIPT ARRAY METHOD với EMOJIS

Như chúng ta đã biết, Array trong JS có rất nhiều method tiện dụng có thể hỗ trợ chúng ta. Sau đây là một số method thông dụng được giải thích bằng các emoji. Thêm một hoặc nhiều phần tử vào sau mảng. livestock.

0 0 46

- vừa được xem lúc

Testing trong Javascript với Jest (Phần 1)

Hello 500 anh em, lại là mình đây. Chú bé coder yêu màu tím thích màu hồng và ghét sự giả dối đây .

0 0 270

- vừa được xem lúc

Áp dụng kiến trúc 3 Layer Architecture vào project NodeJS

The problem encountered. Các framework nodejs phổ biết như Express cho phép chúng ta dễ dàng tạo ra Resful API xử lí các request từ phía client một cách nhanh chóng và linh hoạt.

0 0 80

- vừa được xem lúc

Một số String methods cần biết trong javascript

String là một trong những phần quan trọng nhất trong javascript, ngoài những methods hay dùng như trim, concat, subString, toUpperCase, toLowerCase; Javascript còn cung cấp cho chúng ta rất nhiều methods hữu ích khác để thao tác và giải quyết các vấn đề dễ dàng hơn khi làm việc với String. Mặc dù nh

0 0 39