Nội dung bài viết
Video học lập trình mỗi ngày
Không có nghi ngờ gì khi nói rằng JavaScript là một trong những ngôn ngữ lập trình phổ biến nhất trong phát triển ứng dụng hiện đại bao gồm cả Front-end và back-end. Cho dù bạn đang sử dụng React, Vue hay Angular, nó chỉ là JavaScript. JS xoay quanh một hệ sinh thái quan trọng và rộng lớn và cung cấp vô số khuôn khổ và thư viện có thể giúp chúng tôi phát triển ứng dụng nhanh hơn.
Trước đây tips javascript cũng đã giới thiệu một bài viết "24 code trong ES6 sử dụng thường xuyên trong javascript 2020" đã giúp rất nhiều và được các lập trình viên hưởng ứng một cách mạnh mẽ, và giờ đây chúng ta sẽ đi tiếp những cách rất hay được tập hợp lại cho các bạn cùng tham khảo.
Nhưng đôi khi tốt nhất bạn nên lùi lại và cố gắng hiểu cách thực hiện mọi thứ mà không cần sử dụng thư viện. Hãy xem các đoạn mã sau đây, chúng giải quyết các vấn đề đơn giản một cách thanh thoát, và cũng rất hữu ích trong các dự án hàng ngày, vì vậy hãy ghi chú lại và sử dụng chúng khi bạn gặp sự cố.
1. Đảo ngược chuỗi javascript
Trong ví dụ này, chúng tôi sử dụng tính năng operator spread, phương thức reverse Array và phương thức join String để đảo ngược chuỗi đã cho.
const reverseString = string => [...string].reverse().join('') // Example reverseString('Medium') // "muideM" reverseString('Better Programming') // "gnimmargorP retteB"
2. Tính giai thừa của một số xác định javascript
const factorialOfNumber = number => number < 0 ? (() => { throw new TypeError('Lỗi rồi') })() : number <= 1 ? 1 : number * factorialOfNumber(number - 1) // Example factorialOfNumber(4) // 24 factorialOfNumber(8) // 40320
3. Chuyển số thành một Array javascript
const converToArray = number => [...`${number}`].map(el => parseInt(el)) // Example converToArray(5678) // [5, 6, 7, 8] converToArray(12345678) // [1, 2, 3, 4, 5, 6, 7, 8]
4. Kiểm tra xem số có phải là lũy thừa của 2 không?
const isNumberPowerOfTwo = number => !!number && (number & (number - 1)) == 0 // Example isNumberPowerOfTwo(100) // false isNumberPowerOfTwo(128) // true
5. Tạo một mảng các cặp key-values từ các Objects
const keyValuePairsToArray = object => Object.keys(object) .map(el => [el, object[el]]) // Example keyValuePairsToArray({Better: 4, Programming: 2}) // [['Better', 4], ['Programming', 2]] keyValuePairsToArray({x:1, y:2, z:3}) // [['x', 1], ['y', 2], ['z', 3]]
6. Trả về giá trị lớn nhất trong mảng
const maxElementsFromArray = (array, number = 1) => [...array].sort((x, y) => y -x).slice(0, number) // Example maxElementsFromArray([1, 2, 3, 4, 5]) // [5] maxElementsFromArray([7, 8, 9, 10, 10], 2) // [10, 10]
7. Kiểm tra xem tất cả các phần tử trong mảng có bằng nhau không
const elementsAreEqual = array => array.every(el => el === array[0]) // Example elementsAreEqual([9, 8, 7, 6, 5, 4]) // false elementsAreEqual([4, 4, 4, 4, 4]) // true
8. Tính trung bình của các số cho trước javascript
const averageOfTwoNumbers = (...numbers) => numbers.reduce((accumulator, currentValue) => accumulator + currentValue, 0) / numbers.length // Example averageOfTwoNumbers(...[6, 7, 8]) // 7 averageOfTwoNumbers(...[6, 7, 8, 9]) // 7.5
9. Trả về tổng của hai hoặc nhiều số
const sumOfNumbers = (...array) => [...array].reduce((accumulator, currentValue) => accumulator + currentValue, 0) // Example sumOfNumbers(5, 6, 7, 8, 9, 10) // 45 sumOfNumbers(...[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) // 50
10. Trả về tập hợp lũy thừa của một mảng
const powersetOfArray = array => array.reduce((accumulator, currentValue) => accumulator.concat(accumulator.map(el => [currentValue].concat(el))), [[]]) // Example powersetOfArray([4, 2]) // [[], [4], [2], [2, 4]] powersetOfArray([1, 2, 3]) // [[], [1], [2], [2,1], [3], [3,1], [3,2], [3,2,1]]
Ref: 24 code trong ES6 sử dụng thường xuyên trong javascript 2020
Bản gốc: webdevhub