41554 blogs · [ { "id": "01a08c66-eea7-703e-9f1b-04a0e473ade2", "title": "Three common interview practices I wish to see less of", "url": "https://zhenghao.io/posts/bad-interview-practices", "published_at": "2023-02-19T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0e4e34b2a", "title": "The frontend interview guide you've been missing", "url": "https://zhenghao.io/posts/frontend-interview-type", "published_at": "2022-12-30T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0e597cfbc", "title": "Why async/await is more than just syntactic sugar", "url": "https://zhenghao.io/posts/await-vs-promise", "published_at": "2022-08-08T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0e62f4ed7", "title": "Working with dates using Regex Named Capture Groups", "url": "https://zhenghao.io/posts/dates-regex", "published_at": "2022-08-04T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0e67e0c76", "title": "Detect JavaScript Memory Leaks with queryObjects", "url": "https://zhenghao.io/posts/queryObjects", "published_at": "2022-07-17T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0e6cca069", "title": "When You Should Prefer Map Over Object In JavaScript", "url": "https://zhenghao.io/posts/object-vs-map", "published_at": "2022-06-18T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0e6f32e2b", "title": "Verify if a url links to an image (without relying on regex)", "url": "https://zhenghao.io/posts/verify-image-url", "published_at": "2022-06-14T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0e6fc6113", "title": "A complete guide to check data types in JavaScript", "url": "https://zhenghao.io/posts/js-data-type", "published_at": "2022-05-20T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0e78772af", "title": "JSON and the stringification oddities in JavaScript", "url": "https://zhenghao.io/posts/json-oddities", "published_at": "2022-05-19T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0e7d56ae3", "title": "Why you should include debugging in the interview process", "url": "https://zhenghao.io/posts/debugging-interview", "published_at": "2022-04-21T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0e86a9389", "title": "Preemptive memoization in React is probably not Evil (yet)", "url": "https://zhenghao.io/posts/memo-or-not", "published_at": "2022-03-20T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0e86dd159", "title": "When does React render your component?", "url": "https://zhenghao.io/posts/react-rerender", "published_at": "2022-03-18T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0e948028d", "title": "A complete guide to TypeScript's never type", "url": "https://zhenghao.io/posts/ts-never", "published_at": "2022-03-04T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0ea02b745", "title": "Type polymorphic functions in TypeScript", "url": "https://zhenghao.io/posts/type-functions", "published_at": "2022-02-19T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0ea2850c4", "title": "An introduction to type programming in TypeScript", "url": "https://zhenghao.io/posts/type-programming", "published_at": "2022-01-31T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0ea5c3ada", "title": "the double-assignment pattern in jQuery's source code", "url": "https://zhenghao.io/posts/double-assignment", "published_at": "2022-01-26T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0ea6a8c25", "title": "Type Algebra", "url": "https://zhenghao.io/posts/type-algebra", "published_at": "2022-01-03T00:00:00+00:00" }, { "id": "01a08c66-eea7-703e-9f1b-04a0ea6bbe5e", "title": "The type hierarchy tree", "url": "https://zhenghao.io/posts/type-hierarchy-tree", "published_at": "2021-12-28T00:00:00+00:00" } ] posts Claim your blog
Back to Zhenghao's site
Blog · corpus.blog/blogs/zhenghao.io/posts

Zhenghao's site

zhenghao.io

2023

2022

2021