A.- B._ meldete sich wegen Nackenschmerzen als Folge eines im Dezember 1993 erlittenen Verkehrsunfalles im Dezember 1997 bei der Invalidenversicherung zum Leistungsbezug an. Nach Abklärungen teilte ihr die IV-Stelle des Kantons St. Gallen mit Vorbescheid vom 26. Mai 1998 mit, es bestehe kein Rentenanspruch. Nach Einholung eines neurologischen Gutachtens erliess die Verwaltung am 5. Januar 1999 eine in diesem Sinne lautende Verfügung. Ihre Berechnung nach der gemischten Methode ergab, bei einer Arbeitsunfähigkeit von 50 % und einem Anteil der Erwerbstätigkeit als Näherin/Raumpflegerin von 0,5 (50 %/100 %), eine Einschränkung im erwerblichen Bereich von 0 % und in der Haushaltführung von 45 %, somit eine Gesamtinvalidität von rund 23 % (0,5 x 0 % + 0,5 x 45 %). B.- B._ liess hiegegen Beschwerde erheben, welche das Versicherungsgericht des Kantons St. Gallen in Aufhebung der Verfügung vom 5. Januar 1999 mit der Feststellung guthiess, es bestehe Anspruch auf eine halbe Rente der Invalidenversicherung, deren Beginn und Höhe die IV-Stelle noch festzusetzen habe (Entscheid vom 24. April 2001). C.- Die IV-Stelle führt Verwaltungsgerichtsbeschwerde mit dem Rechtsbegehren, der kantonale Entscheid sei aufzuheben. B._ lässt die Abweisung der Verwaltungsgerichtsbeschwerde beantragen. Das Bundesamt für Sozialversicherung hat keine Vernehmlassung eingereicht. 