ECMA International vừa phê duyệt ECMAScript 2026 (ES2026) vào ngày 30/6, phiên bản thứ 17 của đặc tả JavaScript. Bản cập nhật bổ sung nhiều tính năng mới như Math.sumPrecise, Iterator.concat, Array.fromAsync, Error.isError, phương thức mới cho Map/WeakMap, hỗ trợ chuyển đổi Uint8Array sang hex/base64, cùng cải tiến cho JSON.parse và JSON.stringify.
Why read it: Lập trình viên nên đọc bài này vì ECMAScript 2026 mang đến những tính năng mới như Array.fromAsync và JSON.rawJSON, giúp cải thiện hiệu suất và tính linh hoạt trong xử lý dữ liệu đồng bộ/không đồng bộ và định dạng JSON trong các dự án hiện đại.
Answer 3 short questions to earn reward points for this article. Only do it if you want the points.
3 questions · under a minute · optional
Source: https://www.infoworld.com/article/4193461/ecmascript-2026-specification-approved.html. 8 Sync News only summarizes and links out; content copyright belongs to the authors and original sources.
Đang tải bình luận…
Trong bối cảnh tối ưu hóa website, việc minifying CSS từng được coi là bắt buộc. …
Ladybird là một dự án trình duyệt mới được xây dựng từ đầu, nhằm mang lại trải nghiệm hiện …
JavaScript’s built‑in Date object long suffered from mutability, zero‑based months and …
Astro 7.3 ra mắt với một số cải tiến nhỏ nhưng hữu ích cho quá trình phát triển và triển khai. Lệnh astro preview giờ có tùy chọn --ignore-lock cho phép bỏ qua kiểm tra file lock khi khởi động server preview. Ngoài ra, bản cập nhật truyền logger thời gian chạy của Astro vào các dịch vụ hình ảnh tùy chỉnh và các provider cache, giúp developer dễ dàng ghi log và debug. Đối với người dùng Cloudflare, Astro cung cấp hàm finalize() để gọi trong entrypoint worker tùy chỉnh, đơn giản hoá việc dọn dẹp tài nguyên sau khi request xử lý xong. Những thay đổi này cho thấy Astro tập trung vào việc tăng tính linh hoạt và khả năng mở rộng mà không làm thay đổi cấu trúc cốt lõi của framework.
Astro 7.3 mang lại các tính năng hữu ích cho nhà phát triển như cờ ignore-lock, logger runtime cho dịch vụ hình tùy chỉnh và hàm finalize() cho endpoint Cloudflare worker.
Bài viết mô tả một animation minh hoạ cách động cơ thể thao quay ở 9000 RPM, tương đương 150 vòng quay trục khuỷu mỗi giây trên các cấu hình inline-4, V6, boxer-6 hoặc flat-plane V8. Bối cảnh là so sánh tốc độ quay này với tần số làm mới của màn hình thường dùng, thường là 60Hz hoặc 120Hz. Nguyên nhân kỹ thuật là việc đổi RPM sang vòng mỗi giây (9000 ÷ 60 = 150) cho thấy mỗi khung hình ở 60Hz chỉ cattur được một phần nhỏ của một vòng quay. Hệ quả là nếu chỉ dựa trên màn hình 60Hz, người xem sẽ không thể cảm nhận được sự mượt mà thực sự của động cơ ở tốc độ cao, dẫn tới hiểu lầm về hiệu suất. Điều đáng học là khi trực quan hoá hiện tượng máy móc quay nhanh, cần sử dụng tốc độ làm mới màn hình đủ cao (>= 144Hz) hoặc dùng kỹ năng chậm motion để tránh bỏ qua chi tiết quan trọng.
Bài này giúp bạn hiểu cách động cơ thể thao hoạt động ở tốc độ cực cao vượt qua khả năng cảm nhận của mắt người.
Bài viết mô tả một demo thử nghiệm sử dụng Three.js để biến hình ảnh thành những sợi dải liên tục trôi trên màn hình. Demo này tạo ra ribbons bằng cách ánh texture của hình ảnh lên các đoạn đường được sinh ra qua shader vertex và fragment, sau đó điều khiển vị trí qua requestAnimationFrame để tạo cảm giác luân luân và dệt lại. Khi các dải di chuyển, chúng được kết hợp và tách ra liên tục, cho thấy hiệu ứng vô hạn như một chiếc máy dệt vô tận. Hiệu ứng này minh họa khả năng kết hợp xử lý texture và mô phỏng vật lý đơn giản trong WebGL để tạo ra hình ảnh động phức tạp mà không cần mô hình 3D nặng. Đối với lập trình viên muốn khám phá biểu diễn hình ảnh thời gian thực, demo này gợi ý cách tối ưu hóa số lượng draw call bằng cách gộp nhiều ribbon vào một buffer geometry và sử dụng instanced rendering nếu cần mở rộng quy mô.
Bài này giúp lập trình viên khám phá cách tạo hiệu ứng chuyển đổi hình ảnh thành sợi dải động sử dụng Three.js.
Safari trước đây gặp lỗi khi sử dụng top‑level await vì bộ nạp module của nó còn dựa trên bản đề xuất WHATWG Loader đã bị bỏ và không tuân thủ đầy đủ spec ECMAScript. Nguyên nhân là bộ nạp cũ được viết bằng JavaScript, dẫn tới lỗi “accessed before initialization” và thứ tự đánh giá module không chính xác. Để khắc phục, nhóm WebKit đã viết lại toàn bộ bộ nạp module từ đầu bằng C++ nguyên bản và kiểm tra kỹ lưỡng bằng fuzzing, test262, WPT và các test case do Bun engineers cung cấp. Kết quả là Safari 27 beta và Safari Technology Preview 251 đã полностью hỗ trợ top‑level await mà không còn những lỗi trước đây. Bài học là đầu tư vào việc viết lại thành phần lõi bằng ngôn ngữ native và thực hiện bộ kiểm tra đa dạng giúp đạt được tuân thủ spec và ổn định lâu dài. Nhà phát triển có thể kiểm tra tính năng này ngay trong Safari Technology Preview 251 hoặc bản beta Safari 27 để xác nhận việc top‑level await hoạt động đúng như mong đợi.
Bài này giúp lập trình viên hiểu Safari đã sửa lỗi top-level await ảnh hưởng đến cách module được tải và thực thi.
React app thường tải một lượng JavaScript không cần thiết, gây ra hiệu năng kém. …
Read the news here, practice coding, follow structured courses and train for IELTS on our sibling products — all connected through one 8 Sync account.
The ecosystem home: product overviews, blog and full pricing.
ExploreLearn along a clear roadmap: videos, auto-graded quizzes, certificates and mentors who ship for a living.
View the roadmap1,000+ DSA problems in Vietnamese, auto-graded across 7 languages — many FREE, right in your browser.
Practice for freeAI grading for all four IELTS skills with detailed rubric feedback.
Try it freeA 22 MB AI IDE for Vietnamese devs.
Download freeOrganizational memory for AI agents.
ExploreAI that staffs your Fanpage and qualifies leads for you.
Try it