wecui
Version:
一款基于Vue2.x版本的移动端web组件
95 lines (64 loc) • 2.46 kB
Markdown
[](http://travis-ci.org/dankogai/js-base64)
Yet another Base64 transcoder
```javascript
$ npm install --save js-base64
```
If you are using it on ES6 transpilers, you may also need:
```javascript
$ npm install --save babel-preset-es2015
```
Note `js-base64` itself is stand-alone so its `package.json` has no `dependencies`. However, it is also tested on ES6 environment so `"babel-preset-es2015": "^6.24.1"` is on `devDependencies`.
```html
<script src="base64.js"></script>
```
```javascript
var Base64 = require('js-base64').Base64;
```
```javascript
import { Base64 } from 'js-base64';
```
```javascript
Base64.encode('dankogai'); // ZGFua29nYWk=
Base64.encode('小飼弾'); // 5bCP6aO85by+
Base64.encodeURI('小飼弾'); // 5bCP6aO85by-
Base64.decode('ZGFua29nYWk='); // dankogai
Base64.decode('5bCP6aO85by+'); // 小飼弾
// note .decodeURI() is unnecessary since it accepts both flavors
Base64.decode('5bCP6aO85by-'); // 小飼弾
```
```javascript
if (Base64.extendString) {
// you have to explicitly extend String.prototype
Base64.extendString();
// once extended, you can do the following
'dankogai'.toBase64(); // ZGFua29nYWk=
'小飼弾'.toBase64(); // 5bCP6aO85by+
'小飼弾'.toBase64(true); // 5bCP6aO85by-
'小飼弾'.toBase64URI(); // 5bCP6aO85by-
'ZGFua29nYWk='.fromBase64(); // dankogai
'5bCP6aO85by+'.fromBase64(); // 小飼弾
'5bCP6aO85by-'.fromBase64(); // 小飼弾
}
```
TypeScript 2.0 type definition was added to the [DefinitelyTyped repository](https://github.com/DefinitelyTyped/DefinitelyTyped).
```bash
$ npm install --save @types/js-base64
```
Suppose you have:
```
var pngBase64 =
"iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";
```
Which is a Base64-encoded 1x1 transparent PNG, **DO NOT USE** `Base64.decode(pngBase64)`. Use `Base64.atob(pngBase64)` instead. `Base64.decode()` decodes to UTF-8 string while `Base64.atob()` decodes to bytes, which is compatible to browser built-in `atob()` (Which is absent in node.js). The same rule applies to the opposite direction.
+ http://en.wikipedia.org/wiki/Base64