Вот что я сделал
//Author James Harrington 2014
function base64(file, callback){
var coolFile = {};
function readerOnload(e){
var base64 = btoa(e.target.result);
coolFile.base64 = base64;
callback(coolFile)
};
var reader = new FileReader();
reader.onload = readerOnload;
var file = file[0].files[0];
coolFile.filetype = file.type;
coolFile.size = file.size;
coolFile.filename = file.name;
reader.readAsBinaryString(file);
}
И вот как вы его используете
base64( $('input[type="file"]'), function(data){
console.log(data.base64)
})
Нет, проверка на null не требуется перед использованием instanceof.
Выражение x instanceof SomeClass
равно false
, если x
равно null
.
Из Спецификации языка Java, раздел 15.20.2, «Оператор сравнения типов instanceof» :
«Во время выполнения результат
instanceof
оператористина
, если значение RelationalExpression равно notnull
и ссылка может быть приведение к ReferenceType без возникновения исключенияClassCastException
. В противном случае результат будетложным
. "
Таким образом, если операнд равен нулю, результат будет ложным.
Нет, это не так. instanceof
вернет false
, если его первый операнд null
.
Использование нулевой ссылки в качестве первого операнда в instanceof
возвращает false
.