Skip to content

Instantly share code, notes, and snippets.

Avatar

Emilio Rios emilioriosvz

View GitHub Profile
@emilioriosvz
emilioriosvz / getAllPropertiesNames.js
Created Mar 14, 2016
Get all properties names of an object
View getAllPropertiesNames.js
var getAllProperties = function (object) {
var properties = []
do {
Object.getOwnPropertyNames(object).forEach((prop) => {
if (!~properties.indexOf(prop)) {
properties.push(prop)
}
})
} while (object = Object.getPrototypeOf(object))
@emilioriosvz
emilioriosvz / getTypes.js
Last active Jun 29, 2017
function that receive an object and change the values by the type of the key
View getTypes.js
var o = {
'1': 'adios',
'2': 1.5,
'3': true,
'4': [1, 2, 3],
'5': {1: 2}
}
const getTypes = obj => {
return Object.keys(obj).reduce((prev, key) => {
View objectComparator.js
const objectComparator = (a, b) => {
if (a === b) {
return {
changed: 'equal',
value: a
}
}
var value = {}
var equal = true
View readline.js
var rl = readline.createInterface({
input: fs.createReadStream(filePath),
crlfDelay: Infinity
})
rl.on('line', async (line) => {
counter += 1
rl.pause()
// some async code
rl.resume()
View node-targz.js
var fs = require('fs');
var fstream = require('fstream')
var tar = require('tar');
var zlib = require('zlib');
var gzip = zlib.createGzip();
//var deflate = zlib.createDeflate();
var dirSrcName = process.argv[2] || __dirname;
var dirDestName = process.argv[3] || './dir.tar.gz'
var dirDestStream = fs.createWriteStream(dirDestName);
@emilioriosvz
emilioriosvz / Finiquito.md
Last active May 10, 2018
finiquito or not
View Finiquito.md

RUN

npx https://gist.github.com/emilioriosvz/8ce9745e98276f4a288bad062d6f01b3

@emilioriosvz
emilioriosvz / asyncGreater.js
Last active May 10, 2018
Simple example to understand async await
View asyncGreater.js
#!/usr/bin/env node
const getName = name => {
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve(name)
}, 500)
})
}
@emilioriosvz
emilioriosvz / README.md
Last active Dec 12, 2018
How to install GDAL 2.3 in Amazon Linux
View README.md
sudo yum -y update
sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum-config-manager --enable epel
sudo yum -y install make automake gcc gcc-c++ libcurl-devel proj-devel geos-devel
cd /tmp
curl -L http://download.osgeo.org/gdal/2.0.0/gdal-2.3.2.tar.gz
tar -xvzf gdal-2.3.2.tar.gz
cd gdal-2.3.2/
./configure --prefix=/usr/local --without-python
@emilioriosvz
emilioriosvz / README.md
Created Dec 13, 2018
AT Commands to connect to Wifi (ESP8266)
View README.md
AT
AT+CIOBAUD=9600
AT+GMR
AT+CWMODE?
AT+CWMODE=3
AT+CWMODE?
AT+CWLAP
AT+CWJAP="wifi_SSID","your_wifi_password"
AT+CIPMUX=1
@emilioriosvz
emilioriosvz / index.js
Created Dec 17, 2018
Simple example of how stream transforms work
View index.js
const { createReadStream, createWriteStream } = require('fs')
const { Transform } = require('stream')
const stream = createReadStream('./text.txt')
const writeStream = createWriteStream('./result.txt')
const transformStream = new Transform({
transform (chunk, encoding, done) {
let text = String(chunk)
text = text.toLowerCase().replace(/hola/g, 'adiós')
done(null, text)
You can’t perform that action at this time.