JAVA SCRIPT: Marcar/Desmarcar Checkbox a partir de um botão

Com javascript puro vc pode pegar o elemento pelo nome e atribuir o valor do checked de marcar/desmarcar todos aos demais no onclick(), pois getElementsByName() retorna uma array.


<script type="text/javascript">
    function marcarTodos(marcar){
        var itens = document.getElementsByName('cores[]');
        if(marcar){
            document.getElementById('acao').innerHTML = 'Desmarcar Todos';
        }else{
            document.getElementById('acao').innerHTML = 'Marcar Todos';
        }
        var i = 0;
        for(i=0; i<itens.length;i++){
            itens[i].checked = marcar;
        }
    }
</script>
<form>
    <input type="checkbox" name="cores[]" onclick="marcarTodos(this.checked);">
     <span id="acao">Marcar</span> <br>
    <input type="checkbox" name="cores[]" value="azul"> azul <br>
    <input type="checkbox" name="cores[]" value="verde"> verde <br>
    <input type="checkbox" name="cores[]" value="branco"> branco <br>
</form>