A power tool, comprising: a housing; an electric motor disposed in the housing; a driver circuit comprising a plurality of electronic switches (Q1, Q2, Q3, Q4, Q5, Q6); a control module electrically connected to the driver circuit and outputting a drive signal to control the driver circuit to cause the electric motor to operate; and a current detection module configured to acquire a current value of the electric motor; wherein the control module is further configured to: acquire a bus current value of the electric motor or a phase current value of the electric motor in real time through the current detection module within periodic time intervals; and turn off an on-state electronic switch among the plurality of electronic switches (Q1, Q2, Q3, Q4, Q5, Q6) within remaining time of a present time interval when the acquired bus current value of the electric motor or the phase current value exceeds a preset current threshold, wherein the current flowing through the electric motor will not increase when turning off the electronic switch; and turn on an electronic switch among the plurality of electronic switches (Q1, Q2, Q3, Q4, Q5, Q6) which is controlled by the control module at present to be on when a present period of the drive signal ends, wherein the current flowing towards the electric motor is restored when turning on the electronic switch; wherein a duration of each time interval among the periodic time intervals is the same as a period corresponding to the drive signal at present; and a period of the drive signal varies randomly within a preset period range; characterized in that the preset current threshold is not fixed and satisfies a variation law of a preset waveform. a housing; an electric motor disposed in the housing; a driver circuit comprising a plurality of electronic switches (Q1, Q2, Q3, Q4, Q5, Q6); a control module electrically connected to the driver circuit and outputting a drive signal to control the driver circuit to cause the electric motor to operate; and a current detection module configured to acquire a current value of the electric motor; acquire a bus current value of the electric motor or a phase current value of the electric motor in real time through the current detection module within periodic time intervals; and turn off an on-state electronic switch among the plurality of electronic switches (Q1, Q2, Q3, Q4, Q5, Q6) within remaining time of a present time interval when the acquired bus current value of the electric motor or the phase current value exceeds a preset current threshold, wherein the current flowing through the electric motor will not increase when turning off the electronic switch; and turn on an electronic switch among the plurality of electronic switches (Q1, Q2, Q3, Q4, Q5, Q6) which is controlled by the control module at present to be on when a present period of the drive signal ends, wherein the current flowing towards the electric motor is restored when turning on the electronic switch; wherein a duration of each time interval among the periodic time intervals is the same as a period corresponding to the drive signal at present; and a period of the drive signal varies randomly within a preset period range; characterized in that the preset current threshold is not fixed and satisfies a variation law of a preset waveform.