每期学习
一、实现mask函数将"123456"转为"##3456",只保留最后四个字符
题目来源(https://github.com/30-seconds/30-seconds-of-interviews);
先说下题目吧 首先::
mask("123456789") // "#####6789";
当然大家处理这道题的方法会很多
const mask = (str, maskChar = '#') => {
// 代码
str.slice(-4).padStart(str.length, maskChar)
};
不过这里要介绍两个新的函数方法,padStart,padEnd;
'x'.padStart(5, 'ab') // 'ababx'
'x'.padEnd(5, 'ab') // 'xabab'
上面代码中,padStart()
和padStart()
一共接受两个参数,第一个参数用来指定字符串的最小长度,第二个参数是用来补全的字符串。
如果原字符串的长度,等于或大于指定的最小长度,则返回原字符串。
二、following function return?
function getName () {
return
{
name:
'lihua'
}
}
console.log(getName()) 输出(什么呢)?
因为自动插入分号的机制,所以return之后会有一个;,但是平时书写时可以省略,所以上述题目 等同于
function getName () {
return;
{
name:
'lihua'
}
}
console.log(getName()) 输出(undefined);想输出name的话 就要这样写
function getName () {
return {
name:
'lihua'
}
}
所以在书写时 有时候也不要图省事;;;