Truncating TEMP table before insert leads to big amount of logical reads on TEMP TABLE
The data in there is not really dropped, first of all. It has to do with how Temdb is implemented

Also, Microsoft has a great blog on TempDB and contention that addresses the following points:

Tempdb - Files, Trace flags, updates - Microsoft Blogs


  We are continuing to work on improving tempdb performance and metadata
  contention, but in the meantime, there are some best practices you can
  employ in your code that might help avoid the contention:
  
  
  Do not explicitly drop temp tables at the end of a stored procedure, they will get cleaned up when the session that created them
  ends.
  Do not alter temp tables after they have been created.
  Do not truncate temp tables
  Move index creation statements on temp tables to the new inline index creation syntax that was introduced in SQL Server 2014.