2016-04-16 48 views
0

私はTHREE.jsでちょっと遊んでいて、奇妙なことに気づいた: Firefoxでは、開発者コンソールを開いてcamera.lookAt(カメラがcameraと指定されている場合)、function THREE.Camera.prototype.lookAt</<()を出力する。THREE.Camera.prototype.lookAt</ <() -</ <はどういう意味ですか?

ここで、</<の意味とその出所を知りたい限り、JavaScript関数名では有効な文字ではありません。これまで私はこれを見たり気づいたりしていません。私はこれを再現しようとしましたが、成功しませんでした。

答えて

1

コンソールとコールスタックに匿名機能を表示するためのFireFoxには、namesというルールがあります。そして機能lookAtanonymousです。

FireFoxで以下のコードを開き、コンソールを開いてnonymousと入力します。

index.htmlを

<script> 
    var nonymous = function() { 
     return function() { 
     } 
    }(); 
</script> 

コンソール結果

> nonymous 
< function nonymous</<() 

さらに詳しい情報:

  1. Nonymous: Function-Object Consumption Naming Algorithm Implementation

  2. スプラッシュ波面2011紙:サルマンMirghasemiによってNaming Anonymous JavaScript Functions、ジョン・J・バートン、及び教授クロードPetitpierre

  3. https://github.com/mozilla/gecko-dev/blob/master/js/src/vm/Debugger.cpp#L7720

  4. https://github.com/mozilla/gecko-dev/blob/master/js/src/doc/Debugger/Debugger.Object.md#accessor-properties-of-the-debuggerobject-prototype

関連する問題