code: func (remote *RemoteDebugger) Evaluate(expr string) (interface{}, error) {
  	res, err := remote.SendRequest("Runtime.evaluate", Params{
  		"expression":    expr,
  		"returnByValue": true,
  	})
  
  	if err != nil {
  		return nil, err
  	}
  
  	if res == nil {
  		return nil, nil
  	}
  
  	result := res["result"].(map[string]interface{})
  	if subtype, ok := result["subtype"]; ok && subtype.(string) == "error" {
  		// this is actually an error
  		exception := res["exceptionDetails"].(map[string]interface{})
  		return nil, EvaluateError{ErrorDetails: result, ExceptionDetails: exception}
  	}
  
  	return result["value"], nil
  }
docs: // Evaluate evalutes a Javascript function in the context of the current page.