官术网_书友最值得收藏!

Inspecting the version at runtime

This recipe will introduce the global phantom object in PhantomJS and discuss how we can inspect the version at runtime using the version property.

Getting ready

To run this recipe, we will need a script that accesses phantom.version. The script in this recipe is available in the downloadable code repository as recipe01.js under chapter02. If we run the provided example script, we must change to the root directory for the book's sample code.

How to do it…

Consider the following script:

console.log('PhantomJS');
console.log('  - major version: ' + phantom.version.major);
console.log('  - minor version: ' + phantom.version.minor);
console.log('  - patch version: ' + phantom.version.patch);
phantom.exit();

Given the preceding script, enter the following at the command line:

phantomjs chapter02/recipe01.js

Our output should look like the following:

PhantomJS
 - major version: 1
 - minor version: 9
 - patch version: 2

How it works…

Our script operates by accessing the version object on the global phantom object and writing its properties (major, minor, and patch) to the console. The build of PhantomJS will have this metadata built in and exposed through phantom.version as read-only information.

Although our example is a trivial one, knowing the specific PhantomJS version at runtime can be helpful for building flexible scripts/libraries. For example, knowing the version at runtime can help us target preferred APIs while still falling back on older or deprecated ones in the event that those APIs are not available.

主站蜘蛛池模板: 大同市| 如东县| 沙洋县| 班玛县| 渝北区| 西林县| 克东县| 嘉义县| 三台县| 将乐县| 博乐市| 新沂市| 平利县| 保德县| 陆丰市| 浮山县| 武宁县| 宣化县| 连江县| 昭觉县| 合作市| 原平市| 前郭尔| 西青区| 广德县| 新昌县| 肇庆市| 正阳县| 淅川县| 浦城县| 张家口市| 开原市| 青河县| 错那县| 雅安市| 五寨县| 汕尾市| 响水县| 临漳县| 尉犁县| 娄烦县|