Ich bin mir nicht sicher, ob jemand Ihre Frage direkt angesprochen hat. Dabei handelt es sich um Code, der über den Befehl Quelle anzeigen des Browsers angezeigt wird.
Wie andere bereits gesagt haben, gibt es keine Möglichkeit, Javascript, das in einem Browser ausgeführt werden soll, vor einem bestimmten Betrachter zu schützen. Wenn der Browser es ausführen kann, kann jede bestimmte Person es auch anzeigen / ausführen.
Wenn Sie Ihr Javascript jedoch in eine externe Javascript-Datei einfügen, die im Lieferumfang enthalten ist:
<script type="text/javascript" src="http://mydomain.com/xxxx.js"></script>
Tags, dann wird der Javascript-Code mit dem Befehl View Source nicht sofort sichtbar - nur das Script-Tag selbst wird auf diese Weise sichtbar. Das bedeutet nicht, dass jemand diese externe Javascript-Datei nicht einfach laden kann, um sie anzuzeigen, sondern Sie haben gefragt, wie Sie sie aus dem Befehl "Quelltext anzeigen" des Browsers heraushalten können, und dies wird es tun.
Wenn Sie das Anzeigen der Quelle wirklich besser gestalten möchten, führen Sie alle folgenden Schritte aus:
- Legen Sie es in eine externe .js-Datei.
- Verschleiern Sie die Datei so, dass die meisten nativen Variablennamen durch Kurzversionen ersetzt werden, sodass alle nicht benötigten Leerzeichen entfernt werden, sodass sie nicht ohne weitere Verarbeitung usw. gelesen werden können.
- Fügen Sie die .js-Datei dynamisch hinzu, indem Sie programmgesteuert Skript-Tags hinzufügen (wie dies bei Google Analytics der Fall ist). Dies macht es noch schwieriger, über den Befehl Quelltext anzeigen zum Quellcode zu gelangen, da dort kein einfacher Link zum Klicken vorhanden ist.
- Stellen Sie so viel interessante Logik, die Sie schützen möchten, auf den Server, den Sie über Ajax-Aufrufe abrufen, anstatt die lokale Verarbeitung durchzuführen.
Nach alledem sollten Sie sich auf Leistung, Zuverlässigkeit und eine großartige App konzentrieren. Wenn Sie einen Algorithmus unbedingt schützen müssen, stellen Sie ihn auf den Server. Ansonsten konkurrieren Sie darum, der Beste zu sein, ohne Geheimnisse zu haben. So funktioniert Erfolg im Web letztendlich sowieso.