函数缓存，第二次执行会比第一次要快速很多