小编今天继续和大家一起探索es10中的新特性,针对第一个toString方法的修订,可以通过下面这个例子来熟悉。大家还可以关注我的微信公众号,蜗牛全栈。
function foo(){ // 这是一段注释 console.log("lilei") } console.log(foo.toString()) // function foo(){ // // 这是一段注释 // console.log("lilei") // }
今天的第二个特性,通过名称看着可能挺唬人,所谓的Catch Binding在try...catch语法中,如果不关注错误信息的时候,可以省略catch后面的括号和括号内的参数(通常为e)。之前js写异常处理的时候,我们需要写成这样
// 验证是否为标准格式json const valid = json => { try{ JSON.parse(json) }catch(e){ console.log(e) } } const json = ‘{"name":"lilei","course":es"}‘ valid(json) // SyntaxError: Unexpected token e in JSON at position 25
实际在上面的函数中,我们并不关心错误信息,我们更关心的是返回的结果,如果是标准的json格式,返回true,否则返回false,这样就 可以满足我们的需求,有了es10,我们就可以把函数写成这样
const valid = json => { try{ JSON.parse(json) return true }catch{ return false } } const json = ‘{"name":"lilei","course":es"}‘ console.log(valid(json)) // false