The invention discloses a method for the noninvasive measurement of blood spectra and components, which comprises the following steps: 1, adopting a high-speed
optical spectrometer to continuously measure the transmitted spectra of a measured body: Alambda:{A1, A2, A3, ellipsis, Am}, {A1, A2, A3, ellipsis, Am}, ellipsis {A1, A2, A3, ellipsis, Am}; 2, sequencing
light intensity values of all wavelengths according to the time for a plurality of continuous spectra to obtain a
pulse wave of each
wavelength: A1: {A1, A1, A1, ..., A1}, A2:{A2, A2, A2, ellipsis, A2}, ellipsis, A1:{Am, Am, Am, ellipsis, Am}; 3, performing Fourier transformation on the
pulse wave of each
wavelength, taking a
harmonic wave aj with the
maximum amplitude value, and rearranging the amplitude value of the
harmonic wave of each
wavelength according to a
time sequence to form a spectrum {a1, a2, a3, ellipsis, am} which is an
artery blood spectrum for an
artery part, wherein i is the
harmonic wave with the
maximum amplitude value, and j is the wavelength; and 4, performing stoichiometric analysis on the
artery blood spectrum so as to detect out the blood components in a noninvasive mode. The method does not need to collect blood directly, cannot cause any damages and infections to a
human body, can achieve real-time monitoring, and cannot cause secondary
pollution.