web3には二種類のsha3関数があります。
web3.utils.sha3と
web3.utils.soliditySha3の2つです。
Solidityのsha3関数と同じ挙動をするのはweb3.utils.soliditySha3です。
詳しくは公式ドキュメントを確認して下さい。
sha3の説明に、次のように書いてあります。
Note
To mimic the sha3 behaviour of solidity use soliditySha3
注意
Solidityのsha3の挙動を模倣するにはsoliditySha3を使って下さい
簡単に説明をすると、web3.utils.sha3はStringを一つだけ受け取り、それをbyte arrayに変換してハッシュします。
一方、web3.utils.soliditySha3は入力の型認識を行ったり、各引数をtightly packしたりします。