1. 使用模板字符串
使用+运算符拼接字符串来构建有意义的字符串,这是过时的做法。此外,将字符串与动态值(或表达式)连接可能会导致计算或表达错误。
let name = 'Charlse';
let place = 'India';
// 使用`+`运算符的字符串连接
let messageConcat = 'Mr. ' + name + ' is from ' + place + '. He is a' + ' ' + ' member'
2. isInteger
有一种更简洁的方法可以知道值是否为整数。JavaScript 的 Number API 提供了名为 isInteger() 的方法来实现此目的。这是非常有用的,最好了解一下。
let mynum = 123;
let mynumStr = "123";
console.log(`${mynum} is a number?`, Number.isInteger(mynum));
console.log(`${mynumStr} is a number?`, Number.isInteger(mynumStr));
3. 使用 && 运算符化简表达式
让我们考虑一个具有布尔值和函数的情况。
let isPrime = true;
const startWatching = () => {
console.log('Started Watching!');
}
复制代码
像下面这样,通过检查布尔值来确定是否调用函数,代码太多了。
if (isPrime) {
startWatching();
}
能否通过 AND(&&)运算符使用简写形式?是的,完全可以避免使用 if 语句。
isPrime && startWatching();
4. 使用 || 运算符处理默认值
如果您想为变量设置默认值,可以使用 OR(||)运算符轻松实现。
let person = {name: 'Jack'};
let age = person.age || 35; // 如果 age 未定义,则将值设置为 35
console.log(`Age of ${person.name} is ${age}`);
5. 函数默认参数
在JavaScript中,函数实参(或形参)就像该函数的局部变量一样。调用函数时,您可以传递也可以不传递值。如果您不为参数传递值,则该值将是undefined,并且可能会导致一些多余的副作用。
有一种在定义参数时将默认值传递给函数参数的简单方法。在以下示例中,我们将默认值Hello传递给greetings函数的参数message。
let greetings = (name, message='Hello,') => {
return `${message} ${name}`;
}
console.log(greetings('Jack'));
console.log(greetings('Jack', 'Hola!'));
6. isArray
确定输入是否为数组的另一种有用方法。
let emojis = ['a', 'b', 'c', 'd'];
console.log(Array.isArray(emojis));
let obj = {};
console.log(Array.isArray(obj));
复制代码
7. undefined 和 null
undefined指的是还没有给变量定义值,但已经声明了该变量。
null本身是一个空且不存在的值,必须将其显式赋值给变量。
undefined和null并不严格相等,
undefined === null // false
链接:https://juejin.im/post/6887428533988589575
【 微信扫一扫 】