1、你需要过滤掉错误值吗?
这个技巧肯定会帮助你摆脱错误值,例如 False、“ ”、0、undefined null。查看下面的示例代码以更好地理解。
//example code
const array = [1, 0, false, "", 2, null, 3]
const farray = array.filter(Boolean)
console.log(farray) // [1, 2, 3]
2、去除重复
我们都在 JavaScript 编程中遇到过重复值,最常用的摆脱它们的方法是将 indexOf() 方法与循环结合使用。今天这个技巧将向你展示两种快速去除重复的方法。
//example code
//method 1
const array = [1, 2, 1, 3, 3, 2, 4, 5, 5, 6, 1]
const farray=array.filter((item,idx,arr)=>arr.indexOf(item)===idx)
console.log(farray) // [1, 2, 3, 4, 5, 6]
//method 2
const farray2 =[...new Set(array)];
console.log(farray2) // [1, 2, 3, 4, 5, 6]
3、在 JavaScript 中截断数组
我主要使用这个技巧来缩短我的大数组或使其全空。我们将使用 Array 的长度参数并用一个值初始化它。该值可以是任何正数。
此值将根据你传递的大小截断你的数组。为了更好地理解,请看下面的示例代码。
// example code
const arr1 = [1, 2, 3, 4, 6]
arr1.length=2
console.log(arr1) // [1, 2]
const arr2 = [5, 4, 3, 9, 100, 101]
arr2.length=0
console.log(arr2) //[]
const arr3 = [5, 4, 3, 9, 100, 101]
arr3.length=7
console.log(arr3) //[5, 4, 3, 9, 100, 101, undefined]
4、合并多个对象
假设你需要在 JavaScript 中将两个对象合并为一个,以使其获得更好的信息。对于此任务,你可以使用扩展运算符 (...)。此运算符由三个点 (...) 表示。
它在许多情况下非常有用,我们将通过将两个数组合并为一个来尝试其中之一。查看下面的示例代码。
// example code
let employee = {
'id': 'S129',
'name': 'Haider',
'age': 22,
'addr': 'USA'
}
let job = {
'title': 'Software Engineer',
'location': 'Canada'
}
// merging them into one object
// using spread operator
let merge = {...employee, ...job};
console.log('Final Merged', merge);
//output:
// {
// 'id': 'S129',
// 'name': 'Haider',
// 'age': 22,
// 'addr': 'USA'
// 'title': 'Software Engineer',
// 'location': 'Canada'
// }
5、使用析构的简单交换
在其他编程语言中,交换是在第三个变量(通常名为 temp)的帮助下完成的。但是在 JavaScript 中,你可以使用析构方法在两个对象之间进行交换。查看下面的代码示例以更好地理解。
// example code
let x = 5;
let y = 9;
console.log(x, y); // 5 9
[x, y] = [y, x]; //swaping
console.log(x, y); // 9 5
6、将十进制转换为十六进制和二进制
这个很棒的技巧将帮助你使用内置方法 toString() 将十进制转换为十六进制和二进制值。
//example code
const deci = 500
console.log(deci.toString(2)) // 111110100
console.log(deci.toString(16)) // 1f4
console.log(deci.toString(8)) // 764
7、单行回文检查
这个短行代码技巧将教你如何检查一个字符串是不是回文。
// example code
function isPalindrome(str)
{
return str === str.split('').reverse().join('')
}
console.log(isPalindrome("mom")) // true
console.log(isPalindrome("ball")) // false
console.log(isPalindrome("maham")) // true
8、带空格的 JSON 输出
使 JSON 更清晰的一种简单方法是以其格式提供空格和缩进。这个技巧将帮助你使JSON 代码看起来更清晰和可读。查看下面的代码示例。
//example code
const employee = {
name : "Haider",
age : 22,
salary : 500000
}
const jemployee = JSON.stringify(employee, null, 2)
console.log(jemployee)
//output:
// {
// "name": "Haider",
// "age": 22,
// "salary": 500000
// }
9、代码的执行时间
为了计算你的代码执行时间,这个技巧将向你介绍控制台的 time 和 timeEnd 方法。
//example code
console.time("timer-1")
var a = 20
var b = 3
for(let i = b; i < a; i++)
{
// do something
}
console.timeEnd("timer-1") // timer-1: 1ms
10、检查 isArray
如果你想检查你的对象是不是一个数组,那么,这个技巧会派上用场。我们将使用一个简单的 JavaScript 内置方法,它接受一个参数对象。
//example code
const array1 = [1, 3, 4, 5]
console.log(Array.isArray(array1)) // true
const array2 = {}
console.log(Array.isArray(array2)) // false
11、JavaScript 中的快速 Power 方法
计算功率的一种方法是调用 Math.pow() 方法并传递值,但你也可以使用 **。
//example code
console.log("New Method Power of 2 ^ 3 ", 2**3); // 8
console.log("Old Method Power of 2 ^ 3 ", Math.pow(2,3)); //8