{"json_modified": "2015-02-12T15:14:02.888184", "slug": "Web/JavaScript/EventLoop", "tags": ["Advanced", "JavaScript"], "locale": "en-US", "title": "Concurrency model and Event Loop", "translations": [{"title": "Model de concurr\u00e8ncia i bucle d'events", "url": "/ca/docs/Web/JavaScript/EventLoop", "tags": [], "summary": "", "localization_tags": [], "locale": "ca", "last_edit": "2015-02-12T15:14:00", "review_tags": ["technical", "editorial"]}, {"title": "La gestion de la concurrence et la boucle des \u00e9v\u00e9nements", "url": "/fr/docs/Web/JavaScript/Guide/Boucle%C3%89v%C3%A9nements", "tags": ["Guide", "Advanced", "JavaScript"], "summary": "", "localization_tags": [], "locale": "fr", "last_edit": "2015-02-06T13:03:31", "review_tags": []}, {"title": "\u041f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u0430\u044f \u043c\u043e\u0434\u0435\u043b\u044c \u0438 \u0446\u0438\u043a\u043b \u0441\u043e\u0431\u044b\u0442\u0438\u0439.", "url": "/ru/docs/Web/JavaScript/Guide/EventLoop", "tags": ["\u0420\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e"], "summary": "", "localization_tags": ["inprogress"], "locale": "ru", "last_edit": "2015-02-02T06:28:57", "review_tags": []}, {"title": "\u5e76\u53d1\u6a21\u578b\u4e0eEvent Loop", "url": "/zh-CN/docs/Web/JavaScript/Guide/EventLoop", "tags": [], "summary": "Technical review completed.", "localization_tags": [], "locale": "zh-CN", "last_edit": "2015-02-09T07:20:49", "review_tags": []}], "modified": "2015-02-06T12:46:29", "label": "Concurrency model and Event Loop", "localization_tags": [], "url": "/en-US/docs/Web/JavaScript/EventLoop", "last_edit": "2015-02-06T12:43:37", "summary": "JavaScript has a concurrency model based on an \"event loop\". This model is quite different than the model in other languages like C or Java.", "sections": [{"id": "Quick_Links", "title": "JavaScript Tutorials: JavaScript Guide About this Guide Closures Details of the object model Equality comparisons and when to use them Expressions and operators Functions Inheritance and the prototype chain Inheritance revisited Iterators and generators JavaScript Overview Predefined Core Objects Regular Expressions Sameness in JavaScript Statements (Control Flow) The Iterator protocol The legacy Iterator protocol Using native JSON Values, variables, and literals Working with objects Introductory JavaScript basics JavaScript technologies overview Introduction to Object Oriented JavaScript Intermediate A re-introduction to JavaScript JavaScript data structures Equality comparisons and when to use them Advanced Inheritance and the prototype chain Strict mode JavaScript typed arrays Memory Management Concurrency model and Event Loop References: Built-in objects Array ArrayBuffer Boolean DataView Date Error EvalError Float32Array Float64Array Function Generator GeneratorFunction Infinity Int16Array Int32Array Int8Array InternalError Intl Intl.Collator Intl.DateTimeFormat Intl.NumberFormat Iterator JSON Map Math NaN Number Object ParallelArray Promise Proxy RangeError ReferenceError Reflect RegExp Set StopIteration String Symbol SyntaxError TypeError TypedArray URIError Uint16Array Uint32Array Uint8Array Uint8ClampedArray WeakMap WeakSet decodeURI() decodeURIComponent() encodeURI() encodeURIComponent() escape() eval() isFinite() isNaN() null parseFloat() parseInt() undefined unescape() uneval() Expressions & operators Arithmetic operators Array comprehensions Assignment operators Bitwise operators Comma operator Comparison operators Conditional (ternary) Operator Destructuring assignment Expression closures Generator comprehensions Grouping operator Legacy generator function expression Logical Operators Object initializer Operator precedence Property accessors Spread operator delete operator function expression function* expression in operator instanceof new operator this typeof void operator yield yield* Statements & declarations Legacy generator function block break const continue debugger do...while empty export for for each...in for...in for...of function function* if...else import label let return switch throw try...catch var while with Functions Arguments object Arrow functions Default parameters Method definitions Rest parameters getter setter Misc Lexical grammar Enumerability and ownership of properties JavaScript data structures Strict mode Transitioning to strict mode Template strings Deprecated features New in JavaScript ECMAScript 5 support in Mozilla ECMAScript 6 support in Mozilla ECMAScript 7 support in Mozilla Firefox JavaScript changelog New in JavaScript 1.1 New in JavaScript 1.2 New in JavaScript 1.3 New in JavaScript 1.4 New in JavaScript 1.5 New in JavaScript 1.6 New in JavaScript 1.7 New in JavaScript 1.8 New in JavaScript 1.8.1 New in JavaScript 1.8.5 Documentation: Useful lists All pages index Methods index Properties index Pages tagged \"JavaScript\" Contribute JavaScript doc status The MDN project"}, {"id": "Runtime_concepts", "title": "Runtime concepts"}, {"id": "Visual_representation", "title": "Visual representation"}, {"id": "Stack", "title": "Stack"}, {"id": "Heap", "title": "Heap"}, {"id": "Queue", "title": "Queue"}, {"id": "Event_loop", "title": "Event loop"}, {"id": ".22Run-to-completion.22", "title": "\"Run-to-completion\""}, {"id": "Adding_messages", "title": "Adding messages"}, {"id": "Several_Runtime_communicating_together", "title": "Several Runtime communicating together"}, {"id": "Never_blocking", "title": "Never blocking"}], "id": 60739, "review_tags": []}