不幸的是,在所有环境中,office API的某些function并不完全相同(例如:Excel Online和Excel 2013中的格式)。 另外,一些不错的新function在Excel 2013中不可用,但在Excel 2016中可用(Excel.js) 当然,我可以告诉用户他们只能在2016年使用我的应用程序,而不是实现在所有环境中都不完全支持的事情。 我宁愿将自己的应用程序提供给Excel 2013的用户,即使他们没有办法(或倾向于)升级到2016年。我宁愿在function较差的环境中优雅地降级我的function列表,而不是将应用程序function限制为整个) 封装与文档的所有交互并根据环境运行不同的代码是很容易的。 也就是说,如果我知道我所处的确切环境是什么。当前的office.js提供了一个很好的方式来发现主机应用程序的版本和上下文(在线/离线)吗? 我无法在office.context等中find任何东西。 网上有一些关于整个.getContext链入侵的build议,但这些链接似乎是“无证”( http://wp.sjkp.dk/how-to-detect-if-an-app-for-office-is – 从办公室打开/ ),所以我不是很高兴。 有什么build议么?