Пропустить теорию и перейти прямо к задачам
Ссылка на учебник: http://learn.javascript.ru
Сразу расскажу про несколько особенностей яваскрипта, о которых может быть не написано (или мало написано) в учебниках, но которые стоит понимать:
| composer global require "laravel/installer" | |
| export PATH="~/.composer/vendor/bin:$PATH" | |
| source ~/.bashrc |
| app.directive('validex', function(){ | |
| return { | |
| require: 'ngModel', | |
| link: function(scope, element, attrs, modelCtrl) { | |
| modelCtrl.$parsers.push(function (val) { | |
| if (!attrs.validex) return false; | |
| var pattern = attrs.validex; | |
| var flags = attrs.vflags ? attrs.vflags : ''; | |
| var exp = new RegExp(pattern,flags); | |
| // if (!$('#fullname').val()) { | |
| // $(this).addClass('error'); | |
| // return false; | |
| // } | |
| // | |
| // if (!$('#email').val()) { | |
| // $(this).addClass('error'); | |
| // return false; | |
| // } | |
| // |
| html, body, div, span, object, iframe, | |
| h1, h2, h3, h4, h5, h6, p, blockquote, pre, | |
| abbr, address, cite, code, | |
| del, dfn, em, img, ins, kbd, q, samp, | |
| small, strong, sub, sup, var, | |
| b, i, | |
| dl, dt, dd, ol, ul, li, | |
| fieldset, form, label, legend, | |
| table, caption, tbody, tfoot, thead, tr, th, td, | |
| article, aside, canvas, details, figcaption, figure, |
| document.querySelectorAll('.FriendRequestAdd').forEach(function(e){ | |
| e.click() | |
| }); | |
| setTimeout(function(){ | |
| document.querySelectorAll('.layerCancel').forEach(function(e){ | |
| e.click() | |
| }); | |
| }, 2000); |
Пропустить теорию и перейти прямо к задачам
Ссылка на учебник: http://learn.javascript.ru
Сразу расскажу про несколько особенностей яваскрипта, о которых может быть не написано (или мало написано) в учебниках, но которые стоит понимать:
| $scope.getProblematics = function(callback) { | |
| var url = $scope.makeAPI('/problematics'); | |
| $http.get(url, { | |
| headers: { | |
| "Content-Type": "application/json", | |
| "Accept": "application/json", | |
| "auth_token": $.cookie('auth_token') | |
| } |
| Object.keys(tags) | |
| .sort((a, b) => tags[a] - tags[b]) | |
| .reverse() | |
| .map((name, i) => ({ [name]: tags[name] })) | |
| // before: {a: 3, b: 4, c: 2: d: 1} | |
| // after: {b: 4, a: 3, c: 2, d: 1} |
| // app.js | |
| import express from 'express'; | |
| import bodyParser from 'body-parser'; | |
| import methodOverride from 'method-override'; | |
| import session from 'express-session'; | |
| import cookieParser from 'cookie-parser'; | |
| import errorHandler from 'errorhandler'; | |
| import morgan from 'morgan'; | |
| import flash from 'connect-flash'; |
| // config.js | |
| const merge = require('lodash').merge; | |
| const config = { | |
| // Common configuration section | |
| sentry: { | |
| url: 'https://', | |
| }, | |
| mongodbUri: 'mongodb://', | |
| url: global.hasOwnProperty('location') ? global.location.origin + '/' : '', |