CasperJS API紹介(3)--CasperJS utils module API紹介

12875 ワード

一、使用方法
var casper = require('casper').create();

var utils = require('utils');
utils.dump({plop: 42});

casper.start('http://www.baidu.com/');
casper.run();

二、役に立つAPI紹介
1. betterTypeOf
  • プロトタイプ:betterTypeOf(input)
  • の説明:配列を検出できるなど、より良いtypeof操作演算子が提供される.
  • パラメータ:
  • input:タイプ.

  • 例:
  • コード:
    var casper = require('casper').create();
    
    var utils = require('utils');
    
    casper.start('http://www.baidu.com/');
    casper.then(function(type){ this.echo(utils.betterTypeOf("abcde")); });
    casper.run();
  • 運転結果:结果

  • 2. betterInstanceOf
  • プロトタイプ:betterInstanceOf(input,constructor)
  • では、配列インスタンスを検出したり、継承を処理したりするより良いinstanceof操作演算子が提供されています.
  • パラメータ:
  • input:タイプ.
  • constructor:オブジェクトの構造関数.

  • 例:
  • コード:
    var casper = require('casper').create();
    
    var utils = require('utils');
    
    casper.start('http://www.baidu.com/');
    casper.then(function(){
        this.echo(utils.betterInstanceOf(new Array(), Array));
        this.echo(utils.betterInstanceOf('abcd', Array));
    });
    casper.run();
  • 運転結果:结果

  • 3. dump
  • プロトタイプ:dump(value)
  • 説明:dumpはJSONオブジェクトを1つ標準出力に与え、debugに大きな役割を果たす.
  • パラメータ:
  • value:出力するオブジェクト.

  • 例:
  • コード:
    var casper = require('casper').create();
    var utils = require('utils');
    
    casper.start('http://www.baidu.com/');
    casper.then(function(){
        this.echo(utils.betterInstanceOf(new Array(), Array));
        this.echo(utils.betterInstanceOf('abcd', Array));
    });
    casper.run();
  • 運転結果:dump运行结果

  • 4. getPropertyPath
  • プロトタイプ:getPropertyPath(Object obj,String path)
  • 説明:オブジェクトの外部属性を返し、ポイント(.)で区切られた文字列です.
  • パラメータ:
  • obj:オブジェクト.
  • path:パス文字列.

  • 例:
  • コード:
    var casper = require('casper').create();
    var utils = require('utils');
    var account = {
        username: 'chuck',
        skills: {
            kick: {
                roundhouse: true
            }
        }
    }
    
    casper.start('http://www.baidu.com/');
    casper.then(function(){
        this.echo(utils.getPropertyPath(account, 'skills.kick.roundhouse'));
    });
    casper.run();
  • 運転結果:getPropertyPath

  • 5. isArray
  • プロトタイプ:isArray(value)
  • は、入力パラメータオブジェクトがArrayインスタンスであるかどうかを決定することを示す.
  • パラメータ:
  • value:オブジェクト.

  • 例:
  • コード:
    var casper = require('casper').create();
    var utils = require('utils');
    
    casper.start('http://www.baidu.com/');
    casper.then(function(){
        this.echo(utils.isArray(new Array()));
        this.echo(utils.isArray('abcd'));
    });
    casper.run();
  • 運転結果:isArray

  • 6. isCasperObject
  • プロトタイプ:isCasperObject(value)
  • は、入力パラメータオブジェクトがCasperインスタンスであるかどうかを決定することを示す.
  • パラメータ:
  • value:オブジェクト.

  • 例:
  • コード:
    var casper = require('casper').create();
    var utils = require('utils');
    
    casper.start('http://www.baidu.com/');
    casper.then(function(){
        this.echo(utils.isCasperObject(casper));
        this.echo(utils.isCasperObject('abcd'));
    });
    casper.run();
  • 運転結果:

  • 7. isFunction
  • プロトタイプ:isFunction(value)
  • は、入力パラメータオブジェクトが関数であるかどうかを決定することを示す.
  • パラメータ:
  • value:オブジェクト.

  • 例:
  • コード:
    var casper = require('casper').create();
    var utils = require('utils');
    
    casper.start('http://www.baidu.com/');
    casper.then(function(){
        this.echo(utils.isFunction(function(){}));
        this.echo(utils.isFunction('abcd'));
    });
    casper.run();
  • 運転結果:

  • 8. isJsFile
  • プロトタイプ:isJsFile(file)
  • 説明:入力されたファイル名がJSファイルであるかどうかを確認します..jsまたは.coffeeを拡張子とするかどうかを判断します.
  • パラメータ:
  • file:ファイル名.

  • 例:
  • コード:
    var casper = require('casper').create();
    var utils = require('utils');
    
    casper.start('http://www.baidu.com/');
    casper.then(function(){
        this.echo(utils.isJsFile('test.js'));
        this.echo(utils.isJsFile('abcd'));
    });
    casper.run();
  • 運転結果:isJsFile

  • 9. isWebPage
  • プロトタイプ:isWebPage(what)
  • は、入力されたパラメータが元のPhantomJSのWebPageオブジェクトであるかどうかを決定することを示す.
  • パラメータ:
  • what:オブジェクト.

  • 例:
  • コード:
    var casper = require('casper').create();
    var utils = require('utils');
    
    casper.start('http://www.baidu.com/');
    casper.then(function(){
    this.echo(utils.isWebPage(require('webpage').create()));
        this.echo(utils.isWebPage('abcd'));
    });
    casper.run();
  • 運転結果:isJsFile

  • 10. node
  • プロトタイプ:node(name,attributes)
  • の説明:HTMLまたはXMLのnodeオブジェクトを作成し、オプションのプロパティを追加します.
  • パラメータ:
  • name:プロパティ名.
  • attributes:プロパティ値.

  • 例:
  • コード:
    var casper = require('casper').create();
    var utils = require('utils');
    
    casper.start('http://www.baidu.com/');
    casper.then(function addNode(){
        utils.node('Name');//add a node named Name,there is no attribute.
    });
    casper.run();
  • 運転結果:node