Step 1: Write the function in piecewise form.
Given,
\[
f(x)=x|x|
\]
If \(x\geq 0\), then \(|x|=x\), so
\[
f(x)=x^2
\]
If \(x<0\), then \(|x|=-x\), so
\[
f(x)=-x^2
\]
Thus,
\[
f(x)=
\begin{cases}
-x^2, & x
x^2, & x\geq 0
\end{cases}
\]
Step 2: Check whether the function is one-one.
For \(x<0\),
\[
f(x)=-x^2
\]
which increases from \(-\infty\) to \(0\).
For \(x\geq 0\),
\[
f(x)=x^2
\]
which increases from \(0\) to \(\infty\).
So, for every different value of \(x\), we get a different value of \(f(x)\).
Hence, \(f\) is one-one.
Step 3: Check whether the function is onto.
For \(x<0\),
\[
f(x)=-x^2
\]
gives all negative real values.
For \(x\geq 0\),
\[
f(x)=x^2
\]
gives all non-negative real values.
Therefore, the range of \(f\) is
\[
(-\infty,0)\cup[0,\infty)=\mathbb{R}
\]
Since the range is equal to the codomain \(\mathbb{R}\), the function is onto.
Step 4: Final conclusion.
The function \(f(x)=x|x|\) is both one-one and onto.
Therefore,
\[
\boxed{\text{\(f\) is both one-one and onto}}
\]