gives True if a value has been defined for expr, and gives False otherwise.


  • ValueQ has attribute HoldAll.
  • ValueQ gives False only if expr would not change if it were to be entered as Wolfram Language input.


open allclose all

Basic Examples  (2)

Only the one argument form of has values associated with it:

Scope  (3)

Values of symbols:

Function definitions:

Conditional definitions; the result depends on the argument:

Properties & Relations  (2)

ValueQ is HoldAll:

Here x is evaluated before ValueQ sees it:

Use Unevaluated to preserve the HoldAll attribute:

Pi evaluates to itself:

Use NumericQ to find out whether there is a numerical value defined:

Possible Issues  (1)

ValueQ returns True if any evaluation takes place, even though does not match here:

Introduced in 1988