```

    !function(d, s, id) {
    }(document, 'script', 'twitter-wjs');
    
```

Twitterのシェアボタンのコードの一部です。

  1. `function`の前にある`!`はどういう意味ですか。
  2. 最後の`(document, 'script', 'twitter-wjs');`はどういう意味ですか。

また、これを`coffeescript`で書くとどうなりますか?
CC BY-SA 3.0
2015-01-25T11:19:31.337
5249
2015-01-25T13:46:43.673
2015-01-25T13:46:43.673
30
5855
question
javascript coffeescript
TwitterのシェアボタンのJavaScriptコードを理解したい
1)否定ですね。関数の返値がtrueに解釈できるものをfalseにしfalseに解釈できるものをtrueにします。  
@quesera2 さんが指摘するように単に関数を評価するために使われていると思われます。

2)この部分は関数に引数として`document, 'script', 'twitter-wjs'`を与えて呼び出します。

[coffeescript版テスト](http://coffeescript.org/#try:!\(\(d%2C%20s%2C%20id\)-%3E\)\(document%2C%20'script'%2C%20'twitter-
wjs'\)%3B)
CC BY-SA 3.0
2015-01-25T11:26:11.550
5250
2015-01-25T12:05:27.867
2015-01-25T12:05:27.867
5044
5044
5249
answer