Most preconditioners effectively do this scaling internally. Jacobi scales to put 1 on the diagonal (or for absolute row sums of 1). Scaling is more important when using more sophisticated preconditioners such as geometric multigrid or those based on approximate Schur complements (where matrix entries are not available for algebraic scaling). Additionally, even if the preconditioner corrects the scaling, the unpreconditioned norm (and nonlinear residuals) will still be misleading.
For factorization, it can be helpful for numerical stability to apply a pre- and post-scaling before starting the factorization. You can do the same with an iterative solve, but it is relatively more expensive (because scaling--and later unscaling if you want to check a final residual--is similar to the cost of an iteration) compared to direct solvers which do much more work. This scaling also makes it difficult to use "physics-based" preconditioners.
Whenever possible, I recommend formulating your initial problem to be well-scaled. If that is not possible, or you want to experiment with linear algebra applied to a legacy application in which it would take significant effort to scale properly, scaling is a useful tool.