Biblioteca Padrao (StdLib)

O MelScript vem com diversas funcoes embutidas para facilitar o desenvolvimento.

Entrada e Saida (I/O)

print(mensagem)

Exibe uma mensagem no console ou saida padrao.

print("Ola Mundo");

input(prompt)

Solicita uma entrada do usuario. Retorna o valor digitado.

nome = input("Qual seu nome?");
print("Ola " + nome);

Manipulacao de UI

Metodos disponiveis em elementos de interface.

.value([novoValor])

Obtem ou define o valor de um elemento de entrada.

// Ler valor
v = meuInput.value();

// Definir valor
meuInput.value("Novo Texto");

.text([novoTexto])

Obtem ou define o texto de um elemento.

botao.text("Clique Aqui");

.html([novoHtml])

Define o conteudo HTML interno de um elemento.

div.html("<strong>Negrito</strong>");

Eventos e Interatividade

Responda a acoes do usuario anexando funcoes a elementos.

.onClick(callback)

Executa uma funcao quando o elemento e clicado.

botao = select("#meu-botao");

botao.onClick(function() {
    print("Botao foi clicado!");
    alert("Ola!");
});

.onInput(callback)

Executa uma funcao quando o valor de um campo muda.

campo = select("#meu-input");

campo.onInput(function() {
    texto = campo.value();
    print("Digitando: " + texto);
});

Utilitarios Gerais

.length()

Retorna o tamanho de arrays ou strings.

arr = [1, 2, 3];
print(arr.length()); // 3

Modulos Disponiveis

O MelScript carrega automaticamente modulos para funcionalidades avancadas. Abaixo estao exemplos de uso para cada um.

Canvas (Graficos)

Desenhe formas e imagens em um elemento canvas HTML.

ctx = canvas.getContext("2d");
ctx.fillStyle = "red";
ctx.fillRect(10, 10, 100, 100);

Audio

Toque sons ou sintetize audio.

audio = new Audio("som.mp3");
audio.play();

Network (Rede)

Faca requisicoes HTTP para buscar dados.

dados = http.get("https://api.exemplo.com/dados");
print(dados);

Storage (Armazenamento)

Salve dados no navegador do usuario.

storage.setItem("usuario", "Victor");
nome = storage.getItem("usuario");

Crypto

Gere hashes ou criptografe dados.

hash = crypto.sha256("minha senha");
print(hash);