> For the complete documentation index, see [llms.txt](https://soufatn.gitbook.io/rxjs-book/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://soufatn.gitbook.io/rxjs-book/summary/observable/observable_instance_methods/takewhile.md).

# takeWhile

Returns elements from an observable sequence as long as a specified condition is true.

## Arguments

1. `predicate` *(`Function`)*: A function to test each source element for a condition. The callback is called with the following information:
   1. the value of the element
   2. the index of the element
   3. the Observable object being subscribed
2. `[thisArg]` *(`Any`)*: Object to use as this when executing callback.

## Returns

*(`Observable`)*: An observable sequence that contains the elements from the input sequence that occur before the element at which the test no longer passes.

## Example
