In America, whenever a person buys a good or service, they must almost always pay upfront in cash or a cash equivalent (check, debit card, etc.) or accrue a high interest debt (credit card). Yet, employers almost always pay employees in areas with a 1-2 week lag for the labor employees sell them.

Essentially, employees are forced to give their employees interest free short-term loans.

There is no reason employers could not pay employees in advance for hours worked. at minimum, employers should be required to pay employees weekly rather than bi-weekly or monthly. If an employer elects not to pay employees weekly, they should be required to pay employees in advance rather than in arrears. If an employee is paid for hours that they subsequently do not work, it can just be deducted from the next paycheck.
@MadMadMadMadRN if not paid in advance, that weeks estimated payroll should be put into escrow in advance so if there's a conflict over wages owed, the money is in neutral hands rather than defaulting to not paying the workers
@MadMadMadMadRN on union film jobs, (where the company you're working for is an LLC that will be dissolved after the film is delivered) the union typically requires the production post a bond for a month or so worth of pay. The bond is released at the end of production only when the union confirms there are no outstanding claims. It's a good system!