在lua中任何的意外状况都会抛出一个错误,可是由于lua常常嵌入到别的应用程序中,好比nginx,全部lua在出错的时候,不会使得程序退出或者奔溃,而是返回到应用程序。nginx
function add(a, b)
if not tonumber(a) or not tonumber(b) then
error('a , b必须为数字')
end
return a + b
end
add(1, 'a')
复制代码
像这种判断,也可使用lua中的assert(断言)来处理:ui
function add(a, b)
assert(tonumber(a), a .. '不是一个数字')
assert(tonumber(b), b .. '不是一个数字')
return a + b
end
add(1, 'a')
复制代码