A complete list of RxJS 5 operators with easy to understand explanations and runnable examples.
By: @BTroncone
Also check out my lesson @ngrx/store in 10 minutes on egghead.io!
Update: Non-middleware examples have been updated to ngrx/store v2. More coming soon!
Table of Contents
| var nameKey = Symbol("name"); | |
| var Cat = function(name) { | |
| this[nameKey] = name; | |
| } | |
| Cat.prototype.getName = function() { | |
| return this[nameKey]; | |
| } |
Обычно после написания кода его проверяют. Если речь о какой-то функции, то можно написать простой скрипт, который будет вызывать ее с разными аргументами, и смотреть, что она вернет. Если вы сделали сайт или приложение, то вы открываете его, жмете ссылки и кнопки, проверяете что все отображается верно. Это называется ручное тестирование или QA (Quality Assurance — контроль качества) — человек проверяет работу программы. Если мы попробуем автоматизировать этот процесс, и написать программу, которая проверяет правильность другой программы, то это называется автоматизированное тестирование.
Главный плюс автоматических тестов — то, что они выполняются намного быстрее, чем ручное тестирование, и вам не надо тратить на это свое время (или время тестировщика). Это позволяет запускать их хоть после каждого изменения в коде.
Также, тесты позволяют «защитить» написанный код. Если кто-то в команде (или вы сами) нечаянно «сломал» ваш код, тесты это обнаружат и укажут, что именн
| import { Primitive } from 'primitive'; | |
| let Buffer = Primitive.extend((Super) => { | |
| return { | |
| init (ArrayType, itemSize, pageSize) { | |
| this.used = new Set(); | |
| this.freeByteIndices = []; | |
| this.pages = []; | |
| this.itemSize = itemSize; |
| var cluster = require('cluster'); | |
| var http = require('http'); | |
| var numCPUs = require('os').cpus().length; | |
| if (cluster.isMaster) { | |
| // Fork workers. | |
| for (var i = 0; i < numCPUs; i++) { | |
| cluster.fork(); | |
| } | |
| cluster.on('exit', function(worker, code, signal) { |
| var crypto = require('crypto'); | |
| var SaltLength = 9; | |
| function createHash(password) { | |
| var salt = generateSalt(SaltLength); | |
| var hash = md5(password + salt); | |
| return salt + hash; | |
| } |