Google Apps 脚本如何检测 blob 类型?

Has*_*aat 2 javascript google-apps-script

var data = Utilities.newBlob("THis is blob data", MimeType.PLAIN_TEXT, 'test.txt');

if (  ?? ) then Logger.log('yes, this is blob') ;
Run Code Online (Sandbox Code Playgroud)

如何检测数据是blob?(不是对象)

instanceof Blob
// or
instanceof BlobSource
Run Code Online (Sandbox Code Playgroud)

结果:ReferenceError:BlobBlobSource未定义

instanceof GoogleAppsScript.Base.Blob;
// ReferenceError: `GoogleAppsScript` is not defined

typeof data
// result: object

Object.prototype.toString.call(data);
// result: [object Object]
Run Code Online (Sandbox Code Playgroud)

Kos*_*Kos 5

尝试使用鸭子打字

if (typeof data.copyBlob === 'function')
{
  // it's probably a blob
  console.log('yep');
}
Run Code Online (Sandbox Code Playgroud)

参考:Blob 类