Posts

Showing posts with the label JS

Compress ES6 On Intellij IDEA

Image
Install terser locally or globally npm i terser Open IDEA Settings/Preferences ( CTRL+ALT+S ) click File Watchers under Tools Click + Select Custom Program: select path terser bin OR type terser only if you installed terser globally Arguments: $FileDir$\$FileName$ -o $FileDir$\$FileNameWithoutExtension$.min.js -c -m --ie8 change \ to / if you using LINUX change parameter terser from -c - ie8 as you want do Output Path To Refresh: $FileNameWithoutExtension$.min.js See Screenshot For Configuration

Fix Error NodeJS Windows Visual Studio

Image
Install Microsoft Visual Studio Code 2019 Install Module C++ Type below codes to your terminal (administrator) npm i -g --production windows-build-tools npm config set msvs_version 2019 --global npm config set msbuild_path "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\MSBuild.exe"

Perbedaan typescript dan javascript secara rinci

Image
Typescript atau Javascript? Apa saja perbedaan typescript dan javascript? Secara Harfiah: Typescript lebih strict / lebih detail dan harus mematuhi peraturan seperti typedata (variable, class, interface, dll), hampir sama seperti KOTLIN untuk segi peraturan. Javascript itu bebas, tidak akan memberikan error jika kode / variable / syntax diatasnya sudah dideklarasikan terkecuali class dan interface, javascript pun tidak memperdulikan mau type macam apa di variable yang penting logic yg ditentukan itu sama atau akan dikembalikan ke bentuk 'undefined'. Compiler: Javascript tidak membutuhkan compiler untuk menjalankannya. Sedangkan typescript membutuhkan compiler sebelum di run. Compatibility: Typescript bisa menciptakan javascript dalam macam-macam type browser hanya dengan 1x tulis kode. Javascript tidak dapat membuat semua syntax nya compatible dengan semua browser jika tidak menentukan Condition yang tepat. Invertible: Typescript dapat melakukan apa yg dilakukan java

Fix React Native error Invalid regular expression: /(.*\\__fixtures__

If you Got this issue today on windows, but don't need to downgrade node, just as discussed on stackoverflow just need to change some hashes on your project: node_modules\react-native\packager\blacklist.js var sharedBlacklist = [ /node_modules[/\\]react[/\\]dist[/\\].*/, /website\/node_modules\/.*/, /heapCapture\/bundle\.js/, /.*\/__tests__\/.*/ ]; Change to: var sharedBlacklist = [ /node_modules[\/\\]react[\/\\]dist[\/\\].*/, /website\/node_modules\/.*/, /heapCapture\/bundle\.js/, /.*\/__tests__\/.*/ ];

Load CSS Asynchronously

Load CSS Asynchronously Usage: loadCSS('//CSS_URL'); loadCSS('//raw.githack.com/PrismJS/prism-themes/master/themes/prism-vs.css');

Simple PrismJS

Simple PrismJS Syntax Highlighter <pre> <code> (Not Single) Usage: <pre><code>code block</code></pre> <h3>Welcome to the real-time HTML editor!</h3> <p>Type HTML in the textarea above, and it will magically appear in the frame below.</p> Only <code> Usage: <code>code block</code> <h3>Welcome to the real-time HTML editor!</h3> <p>Type HTML in the textarea above, and it will magically appear in the frame below.</p> Pre (Single Pretext) <h3>Welcome to the real-time HTML editor!</h3> <p>Type HTML in the textarea above, and it will magically appear in the frame below.</p> Pre (Single Pretext) + lang="js" Usage: <pre lang="js">code block</pre> if (window.addEventListener) { window.addEventListener("load", downloadJSAtOnload, false); } else if (window.attachEvent) { window.attach

[JS] How to delay ajax one by one in loop

Image
Bahasa indonesia: Bagaimana eksekusi ajax satu per satu di Loop <div id="demo"></div> <script> /** * Define global variable * @var {int} indexLoop global loop indexer * @var {int} lastLoop global last iteration for global loop indexer from loop initializer * @var {array} queueLoop global array to be processed from ajax * @var {array} arrayLoop define array to be proccesed */ var indexLoop = 0, lastLoop = 0, queueLoop = [], arrayLoop = ['apple', 'melon', 'watermelon', 'grapes']; for (var i = 0; i < arrayLoop.length; i++) { queueLoop.push(arrayLoop[i]); if (i == arrayLoop.length - 1) { lastLoop = i + 1; ajaxLoop(function () { var b = document.createElement('b'); b.innerHTML = 'Processing all item ' + indexLoop + ' of ' + lastLoop + ' succedeed<br/>'; document.getElementById('demo').appendChild(b); }

Javascript Debug Protector

Image
How to protect javascript from developer tools ? here the answer. put this code into your page or template before closing body ( </body> ) <script src="https://cdn.jsdelivr.net/gh/dimaslanjaka/Web-Manajemen@master/js/protector.js" async></script> This script functions to hide the output from console.log, console.error, console.warning, and so on. and will also notify visitors that the site being opened is in a time suspension, because the visitor is opening the developer tools in his browser. This article about : protect javascript from debugging hide javascript console from developer tools protect site from debugging

Konversi DOM element ke HTML string

Mengubah dom document sebuah elemen kedalam HTMl string biasa <div id="elemenTersedia"></div> <script> function htmlFromDom(ClonedNode) { var target = document.getElementById('element-helper'); if (!target) { document.body.innerHTML += '<div id="element-helper" style="display:none"></div>'; target = document.getElementById('element-helper'); } target.innerHTML = ''; var wrap = document.createElement('div'); wrap.appendChild(ClonedNode); return wrap.innerHTML; } /* Penggunaan dalam pembuatan element */ var elem = document.createElement('p'); elem.id = 'IDELEMENT'; elem.innerHTML = 'text element'; // print secara langsung juga bisa document.write(htmlFromDom(elem)); // atau append ke element yang tersedia document.getElementById('elemenTersedia').innerHTML = htmlFr

Membuat array javascript unik

Image
function arrayUnik(A){ uniq = A.filter(function(item, pos, self) { return self.indexOf(item) == pos; }); return uniq; } /* Penggunaan */ var arraymu = [1,2,3,4,5,6,3,7,7,55,6,7,90,98,89,98,89,98,98,89,89]; console.log(arrayUnik(arraymu)); //Buka F12 developer tools untuk melihat hasilnya Menghapus duplikat array di javascript Membuat array menjadi unik di javascript

Disable Mouse Dragging CSS JS

Image
CSS <style> body { -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; } </style>

Check number is Odd or Even [JS]

Image
var oddoreven = function (n = false, type = 'odd') { var time = !n ? new Date().getDay() : Number(n); if (!/^-{0,1}\d+$/.test(time)){ alert('arguments is not number, please remove quote'); return; } hasil = time % 2; return hasil == (type == ('odd' || 'ganjil') ? 1 : 0); } Test document.write('isOdd / Ganjil : ' + oddoreven(false, 'odd')); document.write('<br/>'); document.write('isEven / Genap : '+oddoreven(false, 'even')); Output isOdd / Ganjil : true isEven / Genap : false

Lazy load images blogger

Image
Lazy load images blogger lazy loading blogger berguna untuk : Mempercepat laman web Meningkatkan rating pagespeed HTML (Usage) <img alt='' data-src='https://blogger.googleusercontent.com/img/proxy/AVvXsEjI6MvclZXd2doxNj1CYSURVRcQfQlMqLbnmYUuQWA2m5SPIEBljH7IXHIybUfyy5APOddK-sBYfaYz4DwTz0vC2iRRL-9BRnqt-QaH691ZLzXEdindLgThTk-ONk8DYE0BHVDNAVChX68j0RAaFMgeSNFbNPyT7jDnZynj0WMg-34sNKBpEPSkxw=w72-h58-p-k-no-nu' src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAMAAAAoyzS7AAAAA1BMVEXz8/SVuXQoAAAACklEQVQI12NgAAAAAgAB4iG8MwAAAABJRU5ErkJggg=='/> src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAMAAAAoyzS7AAAAA1BMVEXz8/SVuXQoAAAACklEQVQI12NgAAAAAgAB4iG8MwAAAABJRU5ErkJggg==' : source gambar dengan resolusi paling rendah data-src='https://blogger.googleusercontent.com/img/proxy/AVvXsEjI6MvclZXd2doxNj1CYSURVRcQfQlMqLbnmYUuQWA2m5SPIEBljH7IXHIybUfyy5APOddK-sBYfaYz4DwTz0vC2iRRL-9BRnqt-QaH691ZLzXEdindLgThTk-ONk8DYE0BHVDNAVChX

Alternative Widget Translator for blog

Image
Example Translator Languages English Indonesian Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bengali Bulgarian Catalan Chinese Croatian Czech Danish Dutch English Esperanto Estonian Filipino Finnish French Galician Georgian German Greek Gujarati Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Kannada Korean Latin Latvian Lithuanian Macedonian Malay Maltese Norwegian Persian Polish Portuguese

Bootstrap 4 Auto Progress Bar

Image
Press F12 for console debug requirements: 1. jQuery 2. Bootstrap 4 css 3. https://rawcdn.githack.com/dimaslanjaka/Web-Manajemen/f3dfa14a3848a8282eb39b1e2f01e1d6e62d7c44/js/jquery.progressBarTimer.min.js Read How to async defer CSS JS perfectly attribute info: countdown = to start countdown data-callback = function name of callback data-warning = bar warning style data-success = bar success style data-base = bar progress style HTML code <div data-callback="fn" countdown="5"></div> <div data-callback="fi" countdown="10"></div> Javascript code var elm = $("[countdown]"); function fc() { console.log("callback Succedeed") } function ctd(elm) { //main function var tl = 0 < elm.attr("countdown") ? elm.attr("countdown") : 5, bs = elm.data("base") ? elm.data("base") : "bg-info",

Defer loading css js

Image
Cara defer loading javascript atau menunda pemanggilan javascript di blogger Berfungsi untuk : Mempercepat loading blog website / meningkatkan kecepatan loading website blog. Mengurangi ukuran halaman website. Meningkatkan score pagespeed google. Meningkatkan konten yang terlihat. Mempermudah edit template di mobile phone / hape. Menunda javascript berarti benar-benar memuat atau mem-parsing javascript itu hanya dimulai setelah konten halaman dimuat (Artinya tidak akan memengaruhi kecepatan halaman atau jalur render kritis). Menggunakan acara "onload", kami menyebutnya javascript eksternal Javascript eksternal tidak akan dimuat sebelum konten halaman dimuat Javascript eksternal kemudian akan berjalan dan mempengaruhi halaman Penjelasan Menunda javascript adalah salah satu masalah di web yang dapat membuat Anda ingin menarik rambut Anda mencoba mencari solusi . Banyak orang mengatakan "gunakan saja penundaan" atau "gunakan saja async" atau

[PHP][JS] CryptoJS encrypt decrypt

Image
 CryptoJS encrypt decrypt support PHP 5, PHP 7.x. See the Pen PHP CryptoJS Encrypt Decrypt by dimas lanjaka ( @dimaslanjaka ) on CodePen . Code PHP and details variable [JS] /** * @package https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.9-1/crypto-js.js */ var salt = 'salt'; //salt var iv = '1111111111111111'; //pass salt minimum length 12 chars var iterations = '999'; //iterations /** * Get key * @param string passphrase * @param string salt */ function getKey(passphrase, salt) { var key = CryptoJS.PBKDF2(passphrase, salt, { hasher: CryptoJS.algo.SHA256, keySize: 64 / 8, iterations: iterations }); return key; } /** * Encrypt function * @param string passphrase * @param string plainText */ function userJSEncrypt(passphrase, plainText) { var key = getKey(pas

[JS] Remove Object Keys

var thisIsObject= { 'Cow' : 'Moo', 'Cat' : 'Meow', 'Dog' : 'Bark' }; try { delete thisIsObject['Cow']; } catch(e){ thisIsObject.cow = undefined; } //test using developer tools F12 console.log(thisIsObject); Output => {Cat: "Meow", Dog: "Bark"} Wrapping in function for Easy Use function delkey(obj, key){ try { delete obj[key]; } catch(e){ obj[key] = undefined; } return obj; } Test Wrapped function var thisIsObject= { 'Cow' : 'Moo', 'Cat' : 'Meow', 'Dog' : 'Bark' }; //test using developer tools F12 console.log(delkey(thisIsObject, 'Cow')); Output wrapped function => {Cat: "Meow", Dog: "Bark"}

[JS] Extract Hostname From URL STRING

Extract Hostname / Domain  from URL (string) function extractHostname(url) { var hostname; //find & remove protocol (http, ftp, etc.) and get hostname if (url.indexOf("//") > -1) { hostname = url.split('/')[2]; } else { hostname = url.split('/')[0]; } //find & remove port number hostname = hostname.split(':')[0]; //find & remove "?" hostname = hostname.split('?')[0]; return hostname; } //test the code Press F12 console.log("== Testing extractHostname: =="); console.log(extractHostname("http://www.blog.classroom.me.uk/index.php")); console.log(extractHostname("http://www.youtube.com/watch?v=ClkQA2Lb_iE")); console.log(extractHostname("https://www.youtube.com/watch?v=ClkQA2Lb_iE")); console.log(extractHostname("www.youtube.com/watch?v=ClkQA2Lb_iE")); console.log(extractHostname("ftps://ftp.websitenam

[JS] Set Timezone

Set timezone javascript without using any plugins const DATE = new Date().toLocaleString('en-US', { timeZone: 'Asia/Jakarta' }); console.log(DATE); //debug document.write(JSON.stringify(DATE)); //debug dynamically print compatible with ANY Javascript