角度文字列の比較で奇妙な問題があります。私は2つのファイル名を比較して、アップロードされたファイルが新しいかどうかを確認しようとしています。AngularJS文字列比較
コードは次のようになります。
for (var i = 0; i < $scope.azureFilesData.length; i++) {
console.log("Check Existing File Name: " + $scope.azureFilesData[i].file_name + ", Against upload File Name: " + fileName);
if (angular.equals($scope.azureFilesData[i].file_name.toUpperCase,fileName.toUpperCase)) {
console.log("Confirm Existing File Name: " + $scope.azureFilesData[i].file_name + "Equals upload File Name: " + fileName);
return $scope.azureFilesData[i].azurefilesid;
}
}
はazureFilesDataが空の最初のファイルをアップロードし、それがこのブロックをスキップします。第二のファイルをアップロードして、コンソールが報告されます。
チェック既存のファイル名:アップロードテスト2.docx、アップロードファイル名に対する:アップロードTest.docx 確認既存のファイル名:アップロードのテスト2.docxEqualsアップロードファイル名を:アップロードTest.docx
しかし、最初のファイルのIDを返します(最初のファイルの後のすべてが更新であると考えているため)。また、angular.equalsの代わりに==と===を代入しようとしました。私は何が欠けていますか?
'fileName'変数は' fileName = 'Upload Test.docx''として定義されていますか? – Mistalis