In Bitcoins the blocks have a size limit of 1MB.
Is there any hardcoded limit for Monero? If not, how does it affect the cryptocurrency in terms of scalability?
There is a block size limitation.
The maximum block size is variable, and a function of the size of the previous blocks.
More precisely, the maximum block size at a given height is the maximum of (1) 60000 bytes and (2) twice the median size of the last 100 blocks.
The intent is that, as transaction traffic increases, blocks fill up. When enough do, the maximum block size will increase too. When transaction traffic decreases, block size goes down, and the maximum block size will follow, up to the 60000 bytes limit.
This prevents an attacker from submitting lots of transactions to overwhelm the network at once, while allowing some artificial space scarcity to create a fee market.