使用Object.defineProperty提高兼容性