我試着去檢查輸入的文件擴展名的JavaScript,使用:正確的JavaScript'或'語法?
if(extension != 'jpeg, JPEG, JPG, jpg'){}
我要聲明在邏輯上寫着:「如果變量擴展不等於JPEG或JPEG,或..」等等
但這不起作用,我該如何正確編碼?
我試着去檢查輸入的文件擴展名的JavaScript,使用:正確的JavaScript'或'語法?
if(extension != 'jpeg, JPEG, JPG, jpg'){}
我要聲明在邏輯上寫着:「如果變量擴展不等於JPEG或JPEG,或..」等等
但這不起作用,我該如何正確編碼?
如果你不想使用regex
,你可以這樣做:
extension = extension.toLowerCase();
if(extension != 'jpeg' && extension != 'jpg')
這也將過濾的文件擴展名狀JpEg
。
爲什麼你不想使用正則表達式呢? 「如果你不想用錘子,你可以用磐石釘住那個釘子。」 – 2013-02-15 20:28:00
因爲...幾乎沒有人喜歡正規表達式: - 「 – Cristy 2013-02-15 20:31:50
if(extension != 'jpeg' || extension != 'JPEG' || extension != 'JPG' extension != 'jpg'){}
該表達式總是「真」。使用'和'而不是'或'。 – Cristy 2013-02-13 22:11:38
if(extension != 'jpeg'|| extension != 'JPEG' || extension != 'JPG' || extension !='jpg'){
// would do the magic for you ;-)
}
這很簡單的JavaScript不jQuery!
該表達式總是」真「,使用而不是或。 – Cristy 2013-02-13 22:10:32
使用正則表達式,這裏將讓您的生活更輕鬆:
if (!extension.match(/^jpe?g$/i)) {
alert("Bad extension");
}
這是乾淨了一點,因爲你可以在其他地方定義可接受的擴展的陣列。
if ($.inArray(extension.toLowerCase(), ["jpeg", "jpg"]) !== -1) {
// do something
}
這是** Javascript **,而不是jQuery。 – SLaks 2013-02-13 22:06:34
縮小檢查,使用toLowerCase()! – epascarello 2013-02-13 22:12:06