Como você arredonda um dobro no Dart para um determinado grau de precisão APÓS o ponto decimal?

Dado um dobro, quero arredondá-lo para um determinado número de pontos de precisãoapós o ponto decimal, semelhante à função round () do PHP.

A coisa mais próxima que posso encontrar nos documentos do Dart é double.toStringAsPrecision (), mas isso não é exatamente o que eu preciso porque inclui os dígitosantes o ponto decimal no total de pontos de precisão.

Por exemplo, usando toStringAsPrecision (3):

0.123456789 rounds to 0.123  
9.123456789 rounds to 9.12  
98.123456789 rounds to 98.1  
987.123456789 rounds to 987  
9876.123456789 rounds to 9.88e+3

À medida que a magnitude do número aumenta, perco correspondentemente a precisão após a casa decimal.

questionAnswers(4)

yourAnswerToTheQuestion