# Document: queryCommandState() method
{{ApiRef("DOM")}}{{Non-standard_header}}
> [!NOTE]
> Although the {{domxref("Document/execCommand", "execCommand()")}} method is deprecated, there are still some valid use cases that do not yet have viable alternatives, as mentioned in the `execCommand()` article. In these cases, you may find this method useful to implement a complete user experience, but test to ensure cross-browser compatibility.
The **`queryCommandState()`** method will tell you if the current selection has a certain {{domxref("Document.execCommand()")}} command applied.
## Syntax
```js-nolint
queryCommandState(command)
```
### Parameters
- `command`
- : A command from {{domxref("Document.execCommand()")}}
### Return value
`queryCommandState()` can return a boolean value or `null` if the state is unknown.
## Example
### HTML
```html
Select a part of this text!
```
```css hidden
hr,
button {
margin: 1rem 0;
}
```
### JavaScript
```js
function makeBold() {
const state = document.queryCommandState("bold");
let message;
switch (state) {
case true:
message = "The bold formatting will be removed from the selected text.";
break;
case false:
message = "The selected text will be displayed in bold.";
break;
default:
message = "The state of the 'bold' command is indeterminable.";
break;
}
document.querySelector("#output").textContent = `Output: ${message}`;
document.execCommand("bold");
}
document.querySelector("button").addEventListener("click", makeBold);
```
### Result
{{EmbedLiveSample('Example', '100', '180')}}
## Specifications
This feature is not part of any current specification. It is no longer on track to become a standard. There is an unofficial [W3C execCommand spec draft](https://w3c.github.io/editing/docs/execCommand/).
## Browser compatibility
{{Compat}}
## See also
- {{domxref("HTMLElement.contentEditable")}}
- {{domxref("document.designMode")}}
- {{domxref("document.execCommand()")}}
- Browser bugs related to `queryCommandState()`: [Scribe's "Browser Inconsistencies" documentation](https://github.com/guardian/scribe/blob/master/BROWSERINCONSISTENCIES.md#documentquerycommandstate)