I'd say it's just that programmers agreed on one or the other in certain languages. For example Rust uses the first style while C++ uses the second. There is no real benefit to either approach.
Personally, I would prefer the second approach any time, because I really like the additional space it provides. So when the common agreement is to use the bracket on the same line, I often leave an additional blank line (just take a look at my source code on GitHub hehe), like so:
function foo(a, b, c, d, e, f) {
// start writing code here, leaving more "air to breathe"
}