JavaScript è un linguaggio di programmazione leggero e interpretato con funzionalità orientate agli oggetti che consente di creare interattività in pagine HTML altrimenti statiche.
Il nucleo generale del linguaggio è stato incorporato in Netscape, Internet Explorer e altri browser web.
Di seguito sono riportate le funzionalità di JavaScript:
JavaScript è un linguaggio di programmazione leggero e interpretato.
JavaScript è progettato per creare applicazioni incentrate sulla rete.
JavaScript è complementare e integrato con Java.
JavaScript è complementare e integrato con HTML.
JavaScript è aperto e multipiattaforma.
Di seguito sono riportati i vantaggi dell'utilizzo di JavaScript:
Less server interaction −È possibile convalidare l'input dell'utente prima di inviare la pagina al server. Ciò consente di risparmiare traffico del server, il che significa meno carico sul server.
Immediate feedback to the visitors − Non devono aspettare il caricamento di una pagina per vedere se si sono dimenticati di inserire qualcosa.
Increased interactivity − Puoi creare interfacce che reagiscono quando l'utente ci passa sopra con il mouse o le attiva tramite la tastiera.
Richer interfaces − Puoi utilizzare JavaScript per includere elementi come componenti drag-and-drop e cursori per fornire una ricca interfaccia ai visitatori del tuo sito.
Non possiamo trattare JavaScript come un vero e proprio linguaggio di programmazione. Manca delle seguenti importanti caratteristiche:
JavaScript lato client non consente la lettura o la scrittura di file. Questo è stato mantenuto per motivi di sicurezza.
JavaScript non può essere utilizzato per le applicazioni di rete perché non è disponibile tale supporto.
JavaScript non ha alcuna capacità di multithreading o multiprocesso.
Sì! JavaScript è un linguaggio che fa distinzione tra maiuscole e minuscole. Ciò significa che le parole chiave della lingua, le variabili, i nomi delle funzioni e qualsiasi altro identificatore devono essere sempre digitati con lettere maiuscole coerenti.
JavaScript supporta molto bene il concetto di oggetto. È possibile creare un oggetto utilizzando l'oggetto letterale come segue:
var emp = {
name: "Zara",
age: 10
};
È possibile scrivere e leggere le proprietà di un oggetto utilizzando la notazione del punto come segue:
// Getting object properties
emp.name // ==> Zara
emp.age // ==> 10
// Setting object properties
emp.name = "Daisy" // <== Daisy
emp.age = 20 // <== 20
È possibile definire array utilizzando il letterale array come segue:
var x = [];
var y = [1, 2, 3, 4, 5];
Un array ha una proprietà length utile per l'iterazione. Possiamo leggere gli elementi di un array come segue:
var x = [1, 2, 3, 4, 5];
for (var i = 0; i < x.length; i++) {
// Do something with x[i]
}
Una funzione denominata ha un nome quando è definita. Una funzione denominata può essere definita utilizzando la parola chiave function come segue:
function named(){
// do some stuff here
}
Una funzione in JavaScript può essere denominata o anonima.
Una funzione anonima può essere definita in modo simile a una normale funzione ma non avrebbe alcun nome.
Sì! Una funzione anonima può essere assegnata a una variabile.
Sì! Una funzione anonima può essere passata come argomento a un'altra funzione.
Gli argomenti delle variabili JavaScript rappresentano gli argomenti passati a una funzione.
Usando l'operatore typeof, possiamo ottenere il tipo di argomenti passati a una funzione. Ad esempio:
function func(x){
console.log(typeof x, arguments.length);
}
func(); //==> "undefined", 0
func(1); //==> "number", 1
func("1", "2", "3"); //==> "string", 3
Usando la proprietà arguments.length, possiamo ottenere il numero totale di argomenti passati a una funzione. Ad esempio:
function func(x){
console.log(typeof x, arguments.length);
}
func(); //==> "undefined", 0
func(1); //==> "number", 1
func("1", "2", "3"); //==> "string", 3
L'oggetto arguments ha una proprietà callee, che si riferisce alla funzione in cui ti trovi. Ad esempio:
function func() {
return arguments.callee;
}
func(); // ==> func
La famosa parola chiave JavaScript si riferisce sempre al contesto corrente.
L'ambito di una variabile è la regione del programma in cui è definita. La variabile JavaScript avrà solo due ambiti.
Global Variables − Una variabile globale ha un ambito globale, il che significa che è visibile ovunque nel codice JavaScript.
Local Variables −Una variabile locale sarà visibile solo all'interno di una funzione in cui è definita. I parametri della funzione sono sempre locali rispetto a quella funzione.
Una variabile locale ha la precedenza su una variabile globale con lo stesso nome.
Un callback è una semplice funzione JavaScript passata a un metodo come argomento o opzione. Alcuni callback sono solo eventi, chiamati per dare all'utente la possibilità di reagire quando viene attivato un determinato stato.
Le chiusure vengono create ogni volta che si accede a una variabile definita all'esterno dell'ambito corrente da un ambito interno.
L'esempio seguente mostra come il contatore della variabile è visibile all'interno delle funzioni di creazione, incremento e stampa, ma non al di fuori di esse -
function create() {
var counter = 0;
return {
increment: function() {
counter++;
},
print: function() {
console.log(counter);
}
}
}
var c = create();
c.increment();
c.print(); // ==> 1
Il metodo charAt () restituisce il carattere all'indice specificato.
Il metodo concat () restituisce il carattere all'indice specificato.
Il metodo forEach () chiama una funzione per ogni elemento dell'array.
Il metodo indexOf () restituisce l'indice all'interno dell'oggetto String chiamante della prima occorrenza del valore specificato, o −1 se non trovato.
Il metodo length () restituisce la lunghezza della stringa.
Il metodo pop () rimuove l'ultimo elemento da un array e restituisce quell'elemento.
Il metodo push () aggiunge uno o più elementi alla fine di un array e restituisce la nuova lunghezza dell'array.
Il metodo reverse () inverte l'ordine degli elementi di un array: il primo diventa l'ultimo e l'ultimo diventa il primo.
Il metodo sort () ordina gli elementi di un array.
Il metodo substr () restituisce i caratteri in una stringa che inizia dalla posizione specificata fino al numero di caratteri specificato.
Il metodo toLowerCase () restituisce il valore della stringa chiamante convertito in minuscolo.
Il metodo toUpperCase () restituisce il valore della stringa chiamante convertito in maiuscolo.
Il metodo toString () restituisce la rappresentazione di stringa del valore del numero.
Durante la denominazione delle variabili in JavaScript, tieni a mente le seguenti regole.
Non utilizzare nessuna delle parole chiave riservate a JavaScript come nome della variabile. Queste parole chiave sono menzionate nella sezione successiva. Ad esempio, i nomi delle variabili break o booleani non sono validi.
I nomi delle variabili JavaScript non devono iniziare con un numero (0-9). Devono iniziare con una lettera o il carattere di sottolineatura. Ad esempio, 123test è un nome di variabile non valido ma _123test è uno valido.
I nomi delle variabili JavaScript fanno distinzione tra maiuscole e minuscole. Ad esempio, Nome e nome sono due variabili diverse.
Il tipo di è un operatore unario che viene posto prima del suo singolo operando, che può essere di qualsiasi tipo. Il suo valore è una stringa che indica il tipo di dati dell'operando.
L'operatore typeof restituisce "number", "string" o "boolean" se il suo operando è un numero, una stringa o un valore booleano e restituisce true o false in base alla valutazione.
Restituisce "oggetto".
JavaScript può anche manipolare i cookie utilizzando la proprietà cookie dell'oggetto Document. JavaScript può leggere, creare, modificare ed eliminare il cookie oi cookie che si applicano alla pagina Web corrente.
Il modo più semplice per creare un cookie è assegnare un valore stringa all'oggetto document.cookie, che assomiglia a questo:
Sintassi -
document.cookie = "key1 = value1; key2 = value2; expires = date";
Qui scade l'attributo è l'opzione. Se fornisci a questo attributo una data o un'ora valida, il cookie scadrà alla data o all'ora specificate e dopo tale data il valore del cookie non sarà accessibile.
Leggere un cookie è semplice come scriverne uno, perché il valore dell'oggetto document.cookie è il cookie. Quindi puoi usare questa stringa ogni volta che vuoi accedere al cookie.
La stringa document.cookie manterrà un elenco di coppie nome = valore separate da punto e virgola, dove nome è il nome di un cookie e valore è il suo valore stringa.
È possibile utilizzare la funzione split () delle stringhe per suddividere la stringa in chiave e valori.
A volte potresti voler eliminare un cookie in modo che i successivi tentativi di leggere il cookie non restituiscano nulla. Per fare ciò, è sufficiente impostare la data di scadenza su un tempo nel passato.
è molto semplice fare un reindirizzamento della pagina utilizzando JavaScript sul lato client. Per reindirizzare i visitatori del tuo sito a una nuova pagina, devi solo aggiungere una riga nella sezione principale come segue:
<head>
<script type="text/javascript">
<!--
window.location="http://www.newlocation.com";
//-->
</script>
</head>
JavaScript aiuta a implementare questa funzionalità utilizzando la funzione di stampa dell'oggetto finestra. La funzione di stampa JavaScript window.print () stamperà la pagina web corrente una volta eseguita.
L'oggetto Date è un tipo di dati incorporato nel linguaggio JavaScript. Gli oggetti Data vengono creati con il nuovo Date ().
Una volta creato un oggetto Date, numerosi metodi consentono di operare su di esso. La maggior parte dei metodi consente semplicemente di ottenere e impostare i campi anno, mese, giorno, ora, minuti, secondi e millisecondi dell'oggetto, utilizzando l'ora locale o l'ora UTC (universale o GMT).
L'oggetto Number rappresenta una data numerica, sia numeri interi che in virgola mobile. In generale, non è necessario preoccuparsi degli oggetti Number perché il browser converte automaticamente i letterali numerici in istanze della classe number.
Sintassi -
Creazione di un oggetto numero -
var val = new Number(number);
Se l'argomento non può essere convertito in un numero, restituisce NaN (Not-a-Number).
Le ultime versioni di JavaScript hanno aggiunto funzionalità di gestione delle eccezioni. JavaScript implementa il costrutto try ... catch ... infine così come l'operatore throw per gestire le eccezioni.
È possibile rilevare le eccezioni generate dal programmatore e dal runtime, ma non è possibile rilevare gli errori di sintassi JavaScript.
Il gestore di eventi onerror è stata la prima funzionalità a facilitare la gestione degli errori per JavaScript. L'evento di errore viene generato sull'oggetto finestra ogni volta che si verifica un'eccezione nella pagina.
Il gestore di eventi onerror fornisce tre informazioni per identificare la natura esatta dell'errore:
Error message − Lo stesso messaggio che il browser visualizzerebbe per l'errore specificato.
URL − Il file in cui si è verificato l'errore.
Line number − Il numero di riga nell'URL fornito che ha causato l'errore.