私のガールフレンドと彼女の姉妹は、このiPhoneアプリで遊んでいたので、2つの名前を入力でき、%互換性の一致が返されます。私はあまりにも(恥ずべき)それで遊んで始め、それがどのように働いたのか把握しようとしていました。 「John Doe」や「John Doe」などの2つの正確な文字列を比較すると、ややランダムな互換性が返されますが、毎回同じ互換性が返されます。それは本当に「ランダム」ではありませんでした。JavaScriptの互換性テスター(文字列比較機能)
私はJavaScriptで同じことをする関数をどのように得ることができるか、誰か考えていますか?シェルの機能は次のとおりです。
function getCompatibility(name1, name2) {
// Lower case name1 and name2 and remove spaces
name1 = name1.replace(' ', '').toLowerCase();
name2 = name2.replace(' ', '').toLowerCase();
// Do some type of comparison to get a value between 0 and 100 back
// HELP ME HERE =]
}
getCompatibility('John Doe', 'John Doe'); // outputs 60% (or something)
getCompatibility('John Doe', 'John Doe'); // outputs 60% (same as above)
getCompatibility('John Resig', 'Angelina Jolie'); // outputs 90% (or something)
乱数生成器にそれをシードするプロセスを説明できますか? –
擬似乱数ジェネレータはいくつかの決定論的な方法で動作し、しばしば "シード"関数があります(phpでは[srand](http://php.net/manual/en/function.srand.php))そのため、特定の番号をそれに付けると、それ以降の生成される「ランダム」番号の順序は常に同じになります。 JSはこれを持っていないので、擬似乱数ジェネレータの1つを実際に実装することになります。 – cambraca
疑似乱数ジェネレータの実際の詳細についてはあまりよく分かりませんが、コピー&ペーストできる既製の関数があります。 – cambraca