{"product_id":"139916","title":"Web APIs that work in practice ","description":"\u003ccenter\u003e\u003cdiv style=\"text-align:center\"\u003e\u003cimg src=\"https:\/\/tmgdisk01.cafe24.com\/images\/vs\/4172\/sv\/3jXOZV8RV1rL2pjhRNJDfDYxZt4ERr.png?v=1765077120\" style=\"max-width:100%;max-height:10px\"\u003e\u003c\/div\u003e\u003c\/center\u003e\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\u003ccenter\u003e\n\n\u003cdiv style=\"width:95%\"\u003e\n\n\u003cdiv style=\"text-align:center;font-size:30px;font-weight:bolder;line-height:1.6em\"\u003e Web APIs that work in practice \u003c\/div\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003cdiv style=\"border-bottom:1px;border-bottom-style:dotted;border-color:;padding-bottom:20px\"\u003e\u003ccenter\u003e\u003ctable align=\"center\" width=\"100%\"\u003e\u003ctbody style=\"border:0px\"\u003e\n\n\u003ctr\u003e\u003ctd align=\"center\" style=\"line-height:1.2em;text-align:center;font-size:18px;color:black;font-weight:bold;padding-bottom:20px;\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\n\n\u003ctr\u003e\u003ctd style=\"text-align:center\"\u003e\u003cimg src=\"https:\/\/image.yes24.com\/goods\/152086430\/XL\" style=\"max-width:100%;height:auto\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\n\n\n\u003c\/tbody\u003e\u003c\/table\u003e\u003c\/center\u003e\u003c\/div\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003cdiv style=\"width:95%;{split_style6}padding-top:20px;padding-bottom:20px\"\u003e\n\n\u003cdiv style=\"text-align:left;font-size:16px;font-weight:bold;padding-bottom:20px\"\u003e Description \u003c\/div\u003e\n\n\u003cdiv style=\"text-align:left;word-break:break-all;font-size:14px;line-height:1.6em;\"\u003e\n\n\u003cdiv\u003e\u003ch5\u003e \u003cb\u003eBook Introduction\u003c\/b\u003e\n\u003c\/h5\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e\u003cdiv\u003e \u003cb\u003eWeb APIs that are immediately applicable to real-world applications: Learn the most practical ways to use them through examples.\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e \"Web APIs for Practical Use\" is a practical guide that covers browser-based APIs essential for modern web development, including media, clipboard, and notifications, along with abundant code examples.\u003cbr\u003e Each chapter is structured in the 'Problem' - 'Solution' - 'Explanation' structure, allowing you to quickly find and apply the necessary functions. It also provides practical precautions to ensure that the functions are working properly, increasing usability.\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e We naturally connect theory and practice by combining vast web APIs to implement real-world services. \u003cbr\u003eFor new developers, it provides an opportunity to learn the core principles of web browsers and standard APIs, and also shows new possibilities for front-end development that do not rely on frameworks or libraries.\u003cbr\u003e In an era where the browser has become the platform, this book delivers essential knowledge for web developers in the most practical way possible.\u003cbr\u003e\n\n\u003c\/div\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cul\u003e\u003cli\u003e You can preview some of the book's contents.\u003cbr\u003e \u003cspan\u003ePreview\u003c\/span\u003e\n\n\u003c\/li\u003e\u003c\/ul\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\u003cdiv\u003e\u003ch5\u003e \u003cb\u003eindex\u003c\/b\u003e\n\u003c\/h5\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e CHAPTER 1 Asynchronous API\u003cbr\u003e _1.0 Introduction\u003cbr\u003e _1.1 Handling Promises\u003cbr\u003e _1.2 Preparing for image loading errors\u003cbr\u003e _1.3 Promise Chaining\u003cbr\u003e _1.4 Using async\/await keywords\u003cbr\u003e _1.5 Parallel Promise Usage\u003cbr\u003e _1.6 Element animation using requestAnimationFrame\u003cbr\u003e _1.7 Wrapping event-based APIs with promises\u003cbr\u003e\u003cbr\u003e CHAPTER 2 Storing Data Using the Web Storage API\u003cbr\u003e _2.0 Introduction\u003cbr\u003e _2.1 Check web storage support\u003cbr\u003e _2.2 Storing string data\u003cbr\u003e _2.3 Storing simple objects\u003cbr\u003e _2.4 Storing complex objects \u003cbr\u003e_2.5 Listening for storage changes\u003cbr\u003e _2.6 Retrieving all saved keys\u003cbr\u003e _2.7 Data Deletion\u003cbr\u003e\u003cbr\u003e CHAPTER 3 URLS AND ROUTING\u003cbr\u003e _3.0 Introduction\u003cbr\u003e _3.1 Understanding Relative URLs\u003cbr\u003e _3.2 Removing query parameters from URLs\u003cbr\u003e _3.3 Adding query parameters to the URL\u003cbr\u003e _3.4 Reading query parameters\u003cbr\u003e _3.5 Writing a Simple Client-Side Router\u003cbr\u003e _3.6 Finding URLs that match a pattern\u003cbr\u003e\u003cbr\u003e CHAPTER 4 NETWORK REQUESTS\u003cbr\u003e _4.0 Introduction\u003cbr\u003e _4.1 Sending a request using XMLHttpRequest\u003cbr\u003e _4.2 Sending a GET request using the Fetch API\u003cbr\u003e _4.3 Sending a POST request using the Fetch API\u003cbr\u003e _4.4 Uploading files using the Fetch API\u003cbr\u003e _4.5 Beacon Transmission\u003cbr\u003e _4.6 Listening for remote events with server-sent events\u003cbr\u003e _4.7 Real-time data exchange via WebSockets\u003cbr\u003e\u003cbr\u003e CHAPTER 5 IndexedDB\u003cbr\u003e _5.0 Introduction\u003cbr\u003e _5.1 Creating, reading, and deleting objects in the database\u003cbr\u003e _5.2 Upgrading an existing database\u003cbr\u003e _5.3 Index Lookup\u003cbr\u003e _5.4 Retrieving string values ​​using cursors\u003cbr\u003e _5.5 Large-Scale Data Paging\u003cbr\u003e _5.6 Using the IndexedDB API and Promises\u003cbr\u003e \u003cbr\u003eCHAPTER 6 Monitoring DOM Elements\u003cbr\u003e _6.0 Introduction\u003cbr\u003e _6.1 Lazy loading when images are in the visible area\u003cbr\u003e _6.2 Wrapping IntersectionObserver in a Promise\u003cbr\u003e _6.3 Automatically pause and play videos\u003cbr\u003e _6.4 Creating a height change animation\u003cbr\u003e _6.5 Changing content based on element size\u003cbr\u003e _6.6 Applying a fade-in when an element is in the visible area\u003cbr\u003e _6.7 Using infinite scroll\u003cbr\u003e\u003cbr\u003e CHAPTER 7 Form\u003cbr\u003e _7.0 Introduction\u003cbr\u003e _7.1 Populating form fields with values ​​from local storage\u003cbr\u003e _7.2 Filling out forms using the fetch and form data APIs\u003cbr\u003e _7.3 Sending a form in JSON format\u003cbr\u003e _7.4 Making form fields required\u003cbr\u003e _7.5 Make it so that only numbers can be entered\u003cbr\u003e _7.6 Setting the validation pattern\u003cbr\u003e _7.7 Form Validation\u003cbr\u003e _7.8 Using Custom Validation Logic\u003cbr\u003e _7.9 Checkbox Group Validation\u003cbr\u003e _7.10 Validating Form Fields Asynchronously\u003cbr\u003e\u003cbr\u003e CHAPTER 8 Web Animation API\u003cbr\u003e _8.0 Introduction\u003cbr\u003e _8.1 Applying a ripple effect when clicking \u003cbr\u003e_8.2 Starting and Stopping Animations\u003cbr\u003e _8.3 DOM insertion and removal animation\u003cbr\u003e _8.4 Reverse Animation\u003cbr\u003e _8.5 Scroll Progress Bar\u003cbr\u003e _8.6 Bouncy Elements\u003cbr\u003e _8.7 Running multiple animations simultaneously\u003cbr\u003e _8.8 Loading Animation\u003cbr\u003e _8.9 Animation according to user settings\u003cbr\u003e\u003cbr\u003e CHAPTER 9 Web Speech API\u003cbr\u003e _9.0 Introduction\u003cbr\u003e _9.1 Adding Dictation to a Text Field\u003cbr\u003e _9.2 Writing a Promise-Based Speech Recognition Assistant\u003cbr\u003e _9.3 Checking available voices\u003cbr\u003e _9.4 Voice Synthesis\u003cbr\u003e _9.5 Customizing Voice Synthesis\u003cbr\u003e _9.6 Automatically stop voice synthesis\u003cbr\u003e\u003cbr\u003e CHAPTER 10 WORKING WITH FILES\u003cbr\u003e _10.0 Introduction\u003cbr\u003e _10.1 Reading text from a file\u003cbr\u003e _10.2 Reading images as Data URLs\u003cbr\u003e _10.3 Reading a video as an object URL\u003cbr\u003e _10.4 Reading images via drag and drop\u003cbr\u003e _10.5 Check and request permissions\u003cbr\u003e _10.6 Exporting API data to a file\u003cbr\u003e _10.7 Export API data to a download link\u003cbr\u003e _10.8 Uploading files using drag and drop\u003cbr\u003e\u003cbr\u003e CHAPTER 11 INTERNATIONALIZATION\u003cbr\u003e _11.0 Introduction \u003cbr\u003e_11.1 Formatting dates\u003cbr\u003e _11.2 Get some formatted dates\u003cbr\u003e _11.3 Formatting relative dates\u003cbr\u003e _11.4 Formatting numbers\u003cbr\u003e _11.5 Rounding to a specific decimal place\u003cbr\u003e _11.6 Setting the price range format\u003cbr\u003e _11.7 Setting the unit of measurement format\u003cbr\u003e _11.8 Applying plural rules\u003cbr\u003e _11.9 Counting characters, words, and sentences\u003cbr\u003e _11.10 Setting the list format\u003cbr\u003e _11.11 Sorting an array of names\u003cbr\u003e\u003cbr\u003e CHAPTER 12 WEB COMPONENTS\u003cbr\u003e _12.0 Introduction\u003cbr\u003e _12.1 Creating a component that displays today's date\u003cbr\u003e _12.2 Writing a component that formats arbitrary dates\u003cbr\u003e _12.3 Creating a Feedback Component\u003cbr\u003e _12.4 Creating a Profile Card Component\u003cbr\u003e _12.5 Creating a lazy loading image component\u003cbr\u003e _12.6 Creating More Components\u003cbr\u003e _12.7 Creating a button component with applied styles\u003cbr\u003e\u003cbr\u003e CHAPTER 13 UI Elements\u003cbr\u003e _13.0 Introduction\u003cbr\u003e _13.1 Creating a warning window\u003cbr\u003e _13.2 Create a confirmation window\u003cbr\u003e _13.3 Creating a confirmation window web component\u003cbr\u003e _13.4 Using the More Element\u003cbr\u003e _13.5 Show popover\u003cbr\u003e _13.6 Manually Manipulating Popovers \u003cbr\u003e_13.7 Setting the position of a popover relative to an element\u003cbr\u003e _13.8 Show tooltips\u003cbr\u003e _13.9 Notification Display\u003cbr\u003e\u003cbr\u003e CHAPTER 14 DEVICE INTEGRATION\u003cbr\u003e _14.0 Introduction\u003cbr\u003e _14.1 Checking battery status\u003cbr\u003e _14.2 Checking network status\u003cbr\u003e _14.3 Checking device location\u003cbr\u003e _14.4 Show device location on map\u003cbr\u003e _14.5 Copy and paste text\u003cbr\u003e _14.6 Sharing Content Using the Web Sharing API\u003cbr\u003e _14.7 Vibrate the device\u003cbr\u003e _14.8 Check screen orientation\u003cbr\u003e\u003cbr\u003e CHAPTER 15 PERFORMANCE MEASUREMENT\u003cbr\u003e _15.0 Introduction\u003cbr\u003e _15.1 Measuring Page Loading Performance\u003cbr\u003e _15.2 Resource Performance Measurement\u003cbr\u003e _15.3 Detecting the slowest resource\u003cbr\u003e _15.4 Checking the timing of a specific resource\u003cbr\u003e _15.5 Rendering Performance Profiling\u003cbr\u003e _15.6 Multi-step task profiling\u003cbr\u003e _15.7 Monitoring Performance Metrics\u003cbr\u003e\u003cbr\u003e CHAPTER 16 Handling the Console\u003cbr\u003e _16.0 Introduction\u003cbr\u003e _16.1 Customizing Console Output\u003cbr\u003e _16.2 Using log levels\u003cbr\u003e _16.3 Using Named Log Functions\u003cbr\u003e _16.4 Outputting an array of objects as a table\u003cbr\u003e _16.5 Using the console timer\u003cbr\u003e _16.6 Using Console Groups\u003cbr\u003e _16.7 Using counters\u003cbr\u003e _16.8 Recording variables and their values \u003cbr\u003e_16.9 Stack Trace History\u003cbr\u003e _16.10 Expected Value Verification\u003cbr\u003e _16.11 Examining Object Properties\u003cbr\u003e\u003cbr\u003e CHAPTER 17 CSS\u003cbr\u003e _17.0 Introduction\u003cbr\u003e _17.1 Highlighting text areas\u003cbr\u003e _17.2 Preventing text from flickering\u003cbr\u003e _17.3 DOM Transition Animation\u003cbr\u003e _17.4 Changing style sheets while running\u003cbr\u003e _17.5 Setting CSS classes based on conditions\u003cbr\u003e _17.6 Check media queries\u003cbr\u003e _17.7 Getting the computed style of an element\u003cbr\u003e\u003cbr\u003e CHAPTER 18 Media\u003cbr\u003e _18.0 Introduction\u003cbr\u003e _18.1 Screen Recording\u003cbr\u003e _18.2 Capturing images from the user's camera\u003cbr\u003e _18.3 Displaying the user's camera image\u003cbr\u003e _18.4 Check System Media Support\u003cbr\u003e _18.5 Applying video filters\u003cbr\u003e\u003cbr\u003e CHAPTER 19 Conclusion\u003cbr\u003e _19.0 Introduction\u003cbr\u003e _19.1 Third-party libraries\u003cbr\u003e _19.2 Detect features other than browser version\u003cbr\u003e _19.3 Polyfill\u003cbr\u003e _19.4 The Future to Come\u003c\/div\u003e\n\u003cdiv\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cbr\u003e\u003cdiv\u003e\u003ch5\u003e \u003cb\u003eDetailed image\u003c\/b\u003e \u003c\/h5\u003e\u003c\/div\u003e\n\u003cdiv\u003e\u003cdiv\u003e\u003cimg src=\"https:\/\/image.yes24.com\/momo\/TopCate5579\/MidCate003\/557823440.jpg\" border=\"0\" alt=\"Detailed Image 1\"\u003e\u003c\/div\u003e\u003c\/div\u003e\n\u003cbr\u003e\u003cdiv\u003e\u003ch5\u003e \u003cb\u003ePublisher's Review\u003c\/b\u003e\n\u003c\/h5\u003e\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdiv\u003e \u003cb\u003eEssential API Strategies Every Web Developer Should Know, Learned Through Browser-Based Practical Examples\u003c\/b\u003e\u003cbr\u003e \u003cbr\u003e\"Practical Web APIs\" explains various web APIs that can be implemented using only a web browser, step by step, following the structure of \"problem\" - \"solution\" - \"explanation.\"\u003cbr\u003e We guide you through implementing core features like WebSocket, WebStorage, IndexedDB, and DOM Observer directly without any separate libraries, and we thoroughly cover the operating principles of each feature and precautions that are often overlooked in practice.\u003cbr\u003e It also provides practicality that can be applied directly to real-world projects through promise-based asynchronous processing and structured examples.\u003cbr\u003e\u003cbr\u003e As web technologies rapidly evolve, including AI, multimodality, and UX innovation, understanding the capabilities that can be implemented solely through browsers is becoming increasingly important.\u003cbr\u003e This book will be an excellent guide to building such standard API-centric development capabilities.\u003cbr\u003e If you are a developer who wants to learn everything about web APIs, from their principles to practical applications, in one book, then this is a must-read.\u003cbr\u003e\u003cbr\u003e \u003cbr\u003e\u003cb\u003eWho is this book for?\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e ● JavaScript experience who wants to utilize the web platform in depth\u003cbr\u003e ● Developers with basic knowledge of JavaScript syntax, functions, and standard libraries\u003cbr\u003e ● Practitioners who understand the DOM API required to create browser-based interactive applications\u003cbr\u003e ● Developers who want to improve their skills through various practical examples \u003c\/div\u003e\n\u003cdiv\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003cdiv style=\"width:95%;padding-top:20px;padding-bottom:20px\"\u003e\n\n\u003cdiv style=\"text-align:left;font-size:16px;font-weight:bold;padding-bottom:20px\"\u003e GOODS SPECIFICS \u003c\/div\u003e\n\n\u003cdiv style=\"text-align:left;font-size:14px;line-height:1.6em;\"\u003e\n\n\u003cdiv style=\"width:100%;margin-bottom:5px;line-height:1.6em;font-size:14px\"\u003e - \u003cstrong\u003eDate of issue:\u003c\/strong\u003e September 1, 2025\u003c\/div\u003e\n\n\u003cdiv style=\"width:100%;margin-bottom:5px;line-height:1.6em;font-size:14px\"\u003e - \u003cstrong\u003ePage count, weight, size:\u003c\/strong\u003e 324 pages | 183*235*13mm\u003c\/div\u003e\n\n\u003cdiv style=\"width:100%;margin-bottom:5px;line-height:1.6em;font-size:14px\"\u003e - \u003cstrong\u003eISBN13:\u003c\/strong\u003e 9791169214261\u003c\/div\u003e\n\n\u003cdiv style=\"width:100%;margin-bottom:5px;line-height:1.6em;font-size:14px\"\u003e - \u003cstrong\u003eISBN10:\u003c\/strong\u003e 1169214266 \u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\n\u003c\/div\u003e\n\n\u003ccenter\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003ccenter\u003e\u003ctable\u003e\u003ctr\u003e\u003ctd style=\"height:10px\"\u003e\u003c\/td\u003e\u003c\/tr\u003e\u003c\/table\u003e\u003c\/center\u003e\n\n\u003cspan\u003e\u003c\/span\u003e\n\n\u003c\/center\u003e\n\n\n\u003c\/center\u003e","brand":"LIBRAIRIE COREENNE","offers":[{"title":"Default Title","offer_id":43893384413226,"sku":"139916","price":37.0,"currency_code":"EUR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0683\/2750\/5962\/files\/72299bc62389396311f4c24645e4bc39.jpg?v=1765399548","url":"https:\/\/librairie.coreenne.fr\/en\/products\/139916","provider":"LIBRAIRIE COREENNE","version":"1.0","type":"link"}