Tenho idade suficiente para me lembrar de quando pensávamos que o XML mudaria o mundo da programação… então o JSON nos salvou daquele inferno. Analisar e consultar dados JSON é uma tarefa fundamental para a qual todos nós codificamos, mas, às vezes, eu só quero obter alguns dados localmente com o mínimo de esforço. Acabei de conhecer uma biblioteca realmente incrível para fazer isso: jq
. Vamos dar uma olhada em algumas coisas legais que podemos fazer com o jq
!
Comece instalando jq
por meio de um utilitário como o Homebrew:
brew install jq
Com o Homebrew instalado e um actors.json
local, vamos trabalhar para extrair alguns dados!
// Using this JSON file: // https://raw.githubusercontent.com/algolia/datasets/master/movies/actors.json // Get the 10th item in an array cat actors.json | jq '.[10]' // { // "name": "Dwayne Johnson", // "rating": 1568, // "image_path": "/akweMz59qsSoPUJYe7QpjAc2rQp.jpg", // "alternative_name": "The Rock", // "objectID": "551486400" // } // Get a property from the 10th item in array // > "Dwayne Johnson" // Get multiple items jq '.[10:12]' // Get items up to the 12th position jq '.[:12]' // Get items after the 12th position jq '.[12:]' // Get an array of properties from all objects jq '.[].name' // > ["William Shatner", "Will Ferrell", ...] // Create an object with only properties I want jq '{ name: .[].name, rating: .[].rating}' // Built in functions! jq 'sort' jq 'length' jq 'reverse'
Há muitas outras maneiras de usar o jq
Por isso, recomendo fortemente que o senhor dê uma olhada em JQ Select Explained (Explicação do JQ Select): Seleção de elementos do JSON. Vou manter o jq
à mão no futuro próximo, pois será de grande valia para o senhor!
Duplicar as dicas de ferramentas da página inicial do jQuery usando o MooTools
A página inicial do jQuery tem um efeito de dica de ferramenta bastante suave, como mostrado abaixo:-#13;-#13;-#13;-#13;-#13;Veja como obter esse mesmo efeito usando o MooTools. O XHTML O XHTML acima foi retirado diretamente da homepage do jQuery, sem alterações. O CSS O CSS acima foi ligeiramente modificado para corresponder às regras do CSS já existentes…