MEANアプリケーションで電子メールを表示する必要がある「電子メールを忘れました」ページがありますユーザーが提供した詳細が正常に検証された場合は、ユーザーにヒント/ヒントを提示します。javascriptを使用してこの形式(例:j*****[email protected])で電子メールのヒントを生成する方法
ユーザーが次のメールアドレスを持っているとします:[email protected]
ヒントは、次の形式で表示する必要があります。。
私はsplit()
とreplace()
を使ってみましたが、結果は次の形式で生成できます:*******@example.com
。
問題は今@
シンボル前最初と最後の文字もががケースではありませんどの置き換えられていることです。
下記の私の現在のソリューションを示すための簡単なコードを作成しました。
angular.module('app', []).controller('TestController', ['$scope', function($scope) {
var email = '[email protected]';
var emailParts = email.split('@');
$scope.emailClue = emailParts[0].replace(/./gi, '*') + '@' + emailParts[1];
console.log($scope.emailClue);
}])
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="app" ng-controller="TestController">
<p>Our records show your email address as {{ emailClue }}. Please use this email to log in.</p>
</div>
私は本当に任意の助けをいただければ幸いです。ありがとう。
電子メールを難読化することで何を達成しようとしていますか? – TZHX
私は、ページ上の実際の完全な電子メールがセキュリティ上の脆弱性である可能性があることを指摘しました。とにかくそれをページに載せるつもりなら、なぜこの作業をやっても構わないのでしょうか、おそらくこのサーバー側を行うべきでしょうか? –
わかりませんが、正規表現を使用しています。 $ scope.emailClue = emailParts [0] .replace(/./gi、 '。*。')+ '@' + emailParts [1]; ' – RaV