Corso Data Journalist gen-mar 2017 TECNOLOGIE WEB BASE Javascript (Node.js): elementi di base
Programmi sincroni e asincroni Programmi sincroni Una istruzione viene eseguita solo dopo che è terminata l’esecuzione dell’istruzione precedente. Programmi asincroni Una istruzione può essere eseguita prima che sia terminata l’esecuzione dell’istruzione precedente. PYTHON JAVASCRIPT Nella interrelazione con il DOM o con un server
Javascript e Node.js Node.js è un versione di javascript che può essere eseguita dal server. Per fare i primi passi in javascript, utilizzeremo la versione node.js eseguita da server che, non interagendo con il dom, non pone problemi di esecuzione asincrona delle istruzioni.
var MESS MESS= 'Hello World!'; VARIABILI Javascript Assegnazione Python Assegnazione MESS=’Hello World’ dichiarazione
STRINGHE Javascript (string/ ‘’) Python (str) var STR, STR1, STR2; STR1=’Hello ’; STR2=’world’; STR =STR1+STR2; STR.replace(‘Hello’,’Wonderfull’); STR.lenght typeof STR STR.constructor() STR1=’Hello ’; STR2=’world’; STR =STR1+STR2; STR.replace(‘Hello’,’Wonderfull’); len(STR) type(STR)
Numeri Javascript (number/ 0) Python (int, float) var NUM1, NUM2, NUM3; NUM1=5; NUM2=3.66; NUM3=NUM1/NUM2; NUM3.toFixed() NUM3.toString() typeof NUM3 NUM3.constructor() NUM1=5; NUM2=3.66; NUM3=NUM1/NUM2; int(round(NUM3,0)) str(NUM3) type(NUM3)
Liste Javascript (object/ [ ]) Python (list) var LIS1, LIS2; LIS1=[10,12,52,64,37,'a','b'] LIS2=[7,55,44] LIS1+LIS2 string LIS1*2 NaN LIS1.concat(LIS2) LIS1[0] LIS1[5] LIS1.slice(0,3) typeof LIS1 LIS1.constructor() LIS1=[10,12,52,64,37,'a','b'] LIS2=[7,55,44] LIS1+LIS2 concatenazione LIS1*2 LIS1+LIS1 LIS1+LIS2 LIS1[0] LIS1[5] LIS1[0:3] type(LIS1)
Dizionari Javascript (object/ { }) Python (dict) var DIZ1, DIZ2; DIZ1={'DEU':100, 'FRA':150 } DIZ2={'ITA':50, 'ESP':500} DIZ1[‘DEU’] typeof DIZ1 DIZ1.constructor() DIZ1={'DEU':100, 'FRA':150 } DIZ2={'ITA':50, 'ESP':500} DIZ1[‘DEU’] type(DIZ1)
Blocco if Javascript Python var V1=20; var RIS=''; if (V1<5) {RIS="V1 is <=5";} else if (V1<15) {RIS="V1 is ranging 5-15";} else {RIS="V1 is >=15";} V1=20 if V1<5: RIS="V1 is <=5" elif V1<15: RIS="V1 is ranging 5-15" else: RIS="V1 is >=15";
Ciclo for Javascript Python var text='' for (var i=0; i<10; i=i+1) {text = text +" " + i} text='' for i in range(0,10): text = text +" " + str(i)
Ciclo while Javascript Python var I=0; var TEXT='' while (I < 10) {TEXT = TEXT +" " + I; I=I+1} text='' i=0 while True: text = text +" " + str(i) i=i+1 if i >= 10: break
Corso Data Journalist gen-mar 2017 TECNOLOGIE WEB BASE Javascript e Node.js: oggetti globali
Oggetti globali javascript e Node.js javascript Node.js console console E’ un oggetto globale che fornisce una interfaccia di debug. console.log(‘......’) console.log(‘.....’) Scrive la stringa passata come argomento nello standard output L’oggetto console di Node.js non replica perfettamente l’oggetto console dei principali browser. Ad esempio non ha implementato il metodo .clean() per cancellare il contenuto dello standard output
Moduli base Node.js e python Node.js Python os sys path process os var os=require('os'); var sys=require('sys'); var path=require('path'); import os import sys sys process.env.PATH sys.path path.dirname() path.join('...','...’') process.cwd(); os.hostname() os.arch() process.pid os.path.curdir os.sys.join(‘......’, ‘.......’) os.path.abspath(os.path.curdir) os.uname() os.getpid()
LEZIONE 1.. www.fordatascientist.org D00-Web-JsBase D10-Nodejs-Introduction
Corso Data Journalist gen-mar 2017 TECNOLOGIE WEB BASE Funzioni
Funzioni: tramite dichiarazione Javascript Python function Sum(N1,N2){ // This function does sum of two number console.log('Sum is running') S=N1+N2; return S } var N; N=Sum(12,74); def Sum(N1,N2): ‘’’This function does sum of two number’’’ print('Sum is running') S=N1+N2; return S N=Sum(12,74);
Funzioni: tramite assegnazione Javascript var Sum= function (N1,N2){ // This function does sum of two number console.log('Sum is running') S=N1+N2; return S } var N; N=Sum(12,74); dal punto di vista funzionale, la creazione di una funzione tramite dichiarazione è equivalente alla creazione tramite assegnazione. La creazione tramite assegnazione può essere utile in termini di “chiarezza del codice” quando si vuole utilizzare la funzione come input di un’altra funzione. Ad esempio var SAY=function(WORD) {console.log(WORD);} function Exec(someF, VAL) {someF(VAL);} Exec(SAY, "Hello");
Funzioni: dichiarazione e assegnazione Le funzioni create tramite dichiarazione sono caricate in memoria centrale prima di processare le altre istruzioni. Una funzione creata tramite dichiarazione può essere posizionata anche dopo la sua chiamata.
Scope delle variabili interne ad una funzione Javascript Python possono essere sia locali che globali. Sono locali se sono create tramite il costruttore ‘var’. Sono globali se sono create tramite una semplice assegnazione. una variabile creata all’interno di una funzione è sempre locale, a meno che essa prima di essere creata non sia stata definita come ‘global’
LEZIONE 1.. www.fordatascientist.org D00-Web-JsBase D12-Nodejs-Function
CONTATTI TELEFONO 051 22 35 20 EMAIL WORKSHOP@VICEM.IT

Web base-03-js-numeri stringearray

  • 1.
    Corso Data Journalistgen-mar 2017 TECNOLOGIE WEB BASE Javascript (Node.js): elementi di base
  • 2.
    Programmi sincroni easincroni Programmi sincroni Una istruzione viene eseguita solo dopo che è terminata l’esecuzione dell’istruzione precedente. Programmi asincroni Una istruzione può essere eseguita prima che sia terminata l’esecuzione dell’istruzione precedente. PYTHON JAVASCRIPT Nella interrelazione con il DOM o con un server
  • 3.
    Javascript e Node.js Node.jsè un versione di javascript che può essere eseguita dal server. Per fare i primi passi in javascript, utilizzeremo la versione node.js eseguita da server che, non interagendo con il dom, non pone problemi di esecuzione asincrona delle istruzioni.
  • 4.
    var MESS MESS= 'HelloWorld!'; VARIABILI Javascript Assegnazione Python Assegnazione MESS=’Hello World’ dichiarazione
  • 5.
    STRINGHE Javascript (string/ ‘’) Python (str) var STR,STR1, STR2; STR1=’Hello ’; STR2=’world’; STR =STR1+STR2; STR.replace(‘Hello’,’Wonderfull’); STR.lenght typeof STR STR.constructor() STR1=’Hello ’; STR2=’world’; STR =STR1+STR2; STR.replace(‘Hello’,’Wonderfull’); len(STR) type(STR)
  • 6.
    Numeri Javascript (number/ 0) Python (int, float) varNUM1, NUM2, NUM3; NUM1=5; NUM2=3.66; NUM3=NUM1/NUM2; NUM3.toFixed() NUM3.toString() typeof NUM3 NUM3.constructor() NUM1=5; NUM2=3.66; NUM3=NUM1/NUM2; int(round(NUM3,0)) str(NUM3) type(NUM3)
  • 7.
    Liste Javascript (object/ [ ]) Python (list) varLIS1, LIS2; LIS1=[10,12,52,64,37,'a','b'] LIS2=[7,55,44] LIS1+LIS2 string LIS1*2 NaN LIS1.concat(LIS2) LIS1[0] LIS1[5] LIS1.slice(0,3) typeof LIS1 LIS1.constructor() LIS1=[10,12,52,64,37,'a','b'] LIS2=[7,55,44] LIS1+LIS2 concatenazione LIS1*2 LIS1+LIS1 LIS1+LIS2 LIS1[0] LIS1[5] LIS1[0:3] type(LIS1)
  • 8.
    Dizionari Javascript (object/ { }) Python (dict) varDIZ1, DIZ2; DIZ1={'DEU':100, 'FRA':150 } DIZ2={'ITA':50, 'ESP':500} DIZ1[‘DEU’] typeof DIZ1 DIZ1.constructor() DIZ1={'DEU':100, 'FRA':150 } DIZ2={'ITA':50, 'ESP':500} DIZ1[‘DEU’] type(DIZ1)
  • 9.
    Blocco if Javascript Python varV1=20; var RIS=''; if (V1<5) {RIS="V1 is <=5";} else if (V1<15) {RIS="V1 is ranging 5-15";} else {RIS="V1 is >=15";} V1=20 if V1<5: RIS="V1 is <=5" elif V1<15: RIS="V1 is ranging 5-15" else: RIS="V1 is >=15";
  • 10.
    Ciclo for Javascript Python vartext='' for (var i=0; i<10; i=i+1) {text = text +" " + i} text='' for i in range(0,10): text = text +" " + str(i)
  • 11.
    Ciclo while Javascript Python varI=0; var TEXT='' while (I < 10) {TEXT = TEXT +" " + I; I=I+1} text='' i=0 while True: text = text +" " + str(i) i=i+1 if i >= 10: break
  • 12.
    Corso Data Journalistgen-mar 2017 TECNOLOGIE WEB BASE Javascript e Node.js: oggetti globali
  • 13.
    Oggetti globali javascripte Node.js javascript Node.js console console E’ un oggetto globale che fornisce una interfaccia di debug. console.log(‘......’) console.log(‘.....’) Scrive la stringa passata come argomento nello standard output L’oggetto console di Node.js non replica perfettamente l’oggetto console dei principali browser. Ad esempio non ha implementato il metodo .clean() per cancellare il contenuto dello standard output
  • 14.
    Moduli base Node.jse python Node.js Python os sys path process os var os=require('os'); var sys=require('sys'); var path=require('path'); import os import sys sys process.env.PATH sys.path path.dirname() path.join('...','...’') process.cwd(); os.hostname() os.arch() process.pid os.path.curdir os.sys.join(‘......’, ‘.......’) os.path.abspath(os.path.curdir) os.uname() os.getpid()
  • 15.
  • 16.
    Corso Data Journalistgen-mar 2017 TECNOLOGIE WEB BASE Funzioni
  • 17.
    Funzioni: tramite dichiarazione JavascriptPython function Sum(N1,N2){ // This function does sum of two number console.log('Sum is running') S=N1+N2; return S } var N; N=Sum(12,74); def Sum(N1,N2): ‘’’This function does sum of two number’’’ print('Sum is running') S=N1+N2; return S N=Sum(12,74);
  • 18.
    Funzioni: tramite assegnazione Javascript varSum= function (N1,N2){ // This function does sum of two number console.log('Sum is running') S=N1+N2; return S } var N; N=Sum(12,74); dal punto di vista funzionale, la creazione di una funzione tramite dichiarazione è equivalente alla creazione tramite assegnazione. La creazione tramite assegnazione può essere utile in termini di “chiarezza del codice” quando si vuole utilizzare la funzione come input di un’altra funzione. Ad esempio var SAY=function(WORD) {console.log(WORD);} function Exec(someF, VAL) {someF(VAL);} Exec(SAY, "Hello");
  • 19.
    Funzioni: dichiarazione eassegnazione Le funzioni create tramite dichiarazione sono caricate in memoria centrale prima di processare le altre istruzioni. Una funzione creata tramite dichiarazione può essere posizionata anche dopo la sua chiamata.
  • 20.
    Scope delle variabiliinterne ad una funzione Javascript Python possono essere sia locali che globali. Sono locali se sono create tramite il costruttore ‘var’. Sono globali se sono create tramite una semplice assegnazione. una variabile creata all’interno di una funzione è sempre locale, a meno che essa prima di essere creata non sia stata definita come ‘global’
  • 21.
  • 22.
    CONTATTI TELEFONO 051 2235 20 EMAIL WORKSHOP@VICEM.IT