题目一
去除数组中的重复值
const arr = [1, 2, 2, 1, 3]
const set = new Set(arr)
console.log([...set]) // [1, 2, 3]
console.log(arr) // [1, 2, 2, 1, 3]
题目二
const createInfo = ({ email, address = {} }) => {
const validEmail = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/.test(email)
if (!validEmail) throw new Error("invalid email")
return {
email,
address: address ? address : null
}
}
const email = 'cc@163.com'
const email2 = '@163.com'
const address = '北京'
const result = createInfo({ email })
console.log(result)
const result2 = createInfo({ email, address })
console.log(result2)
const result3 = createInfo({ email2 })
console.log(result3)
题目三
console.log([] ? 1 : 2) // 1
console.log({} ? 1 : 2) // 1
console.log("1" ? 1 : 2) // 1
console.log("2" ? 1 : 2) // 1
console.log(" " ? 1 : 2) // 1
console.log(NaN ? 1 : 2) // 2
console.log(undefined ? 1 : 2) // 2
console.log(null ? 1 : 2) // 2
console.log("" ? 1 : 2) // 2