{{sellerTotalView > 1 ? __("sellers", {number: sellerTotalView}) : __("seller", {number: sellerTotalView}) }}, {{numTotalView > 1 ? __("items", {number: numTotalView}) : __("item", {number: numTotalView}) }}
free FREE

Change Your Zip Code

Inventory information and delivery speeds may vary for different locations.

Location History

{{email ? __('Got it!') : __('Restock Alert')}}

We will notify you by email when the item back in stock.

Cancel
Yami

Jingdong book

JavaScript Web应用开发

{{buttonTypePin == 3 ? __("Scan to view more PinGo") : __("Scan to start")}}

JavaScript Web应用开发

{{__(":people-members", {'people': item.limit_people_count})}} {{ itemCurrency }}{{ item.valid_price }} {{ itemCurrency }}{{ item.invalid_price }} {{ itemDiscount }}
Ends in
{{ itemCurrency }}{{ item.valid_price }}
{{ itemCurrency }}{{ priceFormat(item.valid_price / item.bundle_specification) }}/{{ item.unit }}
{{ itemDiscount }}
{{ itemCurrency }}{{ item.valid_price }} {{ itemCurrency }}{{ priceFormat(item.valid_price / item.bundle_specification) }}/{{ item.unit }} {{ itemCurrency }}{{ item.invalid_price }} {{itemDiscount}}
{{ itemCurrency }}{{ item.valid_price }}
Sale ends in
Sale will starts after Sale ends in
{{ getSeckillDesc(item.seckill_data) }}
{{ __( "Pay with Gift Card to get sale price: :itemCurrency:price", { 'itemCurrency' : itemCurrency, 'price' : (item.giftcard_price ? priceFormat(item.giftcard_price) : '0.00') } ) }} ({{ itemCurrency }}{{ priceFormat(item.giftcard_price / item.bundle_specification) }}/{{ item.unit }}) Details
Best before

Currently unavailable.

We don't know when or if this item will be back in stock.

Unavailable in your area.
Sold Out

Details

Full product details
Editer Recommend

《JavaScript Web应用开发》介绍了用于提升软件质量和改进开发流程的技术:首先教你如何制定能优化产品质量的过程,制定好过程后,每次修改代码后都会执行一些任务,每次提交后都会运行测试,还能自动部署;其次集中介绍如何设计模块化的组件,以及如何使用这些组件构建稳定的应用。内容包括自动化开发、测试和部署过程;JavaScript基础知识和模块化实践;开发模块化、可维护且经过良好测试的应用;掌握异步流程,理解MVC模式,设计REST API。
Content Description

《JavaScript Web应用开发》是面向一线开发人员的一本实用教程,对新的Web开发技术与程序进行了全面的梳理和总结,为JavaScript开发人员提供了改进Web开发质量和开发流程的新技术。本书主要分两大块,首先是以构建为目标实现JavaScript驱动开发,其次介绍如何管理应用设计过程中的复杂度,包括模块化、MVC、异步代码流、测试以及API设计原则。
Author Description

Nicolas Bevacqua,是JavaScript开源社区的活跃成员,自由Web开发者,关注模块化JavaScript、构建过程和新锐设计理念,偶尔进行公开演讲,还是一名充满激情的作家。他维护着多个开源项目,还开设了一个博客,发表关于Web、性能、渐进增强和JavaScript开发相关的文章,地址是ponyfoo.com。Nico现在和他的女友玛丽安一起生活在阿根廷布宜诺斯艾利斯。
Comments

“享受这段改进开发流程的旅程吧。”
——Addy Osmani,就职于谷歌

“JavaScript开发者必读的一本书!”
——Stephen Wakely,就职于汤森路透公司

“现代JavaScript生态系统这一迷宫的指南。”
——Jonas Bandi,就职于IvoryCode GmbH
Catalogue

第一部分构建过程
第1章构建优先2
1.1问题出现了2
1.1.145分钟内每秒损失17万美元3
1.1.2构建优先3
1.1.3繁琐的前戏4
1.2遵守构建优先原则,提前计划5
1.3构建过程7
1.4处理应用的复杂度和设计理念8
1.5钻研构建优先原则12
1.5.1检查代码质量12
1.5.2在命令行中使用lint工具15
1.6总结18
第2章编写构建任务,制定流程19
2.1介绍Grunt20
2.1.1安装Grunt21
2.1.2设置第一个Grunt任务23
2.1.3使用Grunt管理构建过程24
2.2预处理和静态资源优化26
2.2.1详述预处理26
2.2.2处理LESS28
2.2.3打包静态资源31
2.2.4简化静态资源32
2.2.5创建子图集34
2.3检查代码完整性36
2.3.1清理工作目录36
2.3.2使用lint程序检查代码37
2.3.3自动运行单元测试38
2.4首次自己编写构建任务38
2.5案例分析:数据库任务39
2.6总结41
第3章精通环境配置和开发流程42
3.1应用的环境42
3.1.1配置构建模式43
3.1.2环境层面的配置47
3.1.3开发环境有什么特别之处48
3.2配置环境48
3.2.1瀑布式存储配置的方法49
3.2.2通过加密增强环境配置的安全性50
3.2.3使用系统级方式设置环境层面的配置52
3.2.4在代码中使用瀑布式方法合并配置53
3.3自动执行繁琐的首次设置任务54
3.4在持续开发环境中工作54
3.4.1监视变动,争分夺秒55
3.4.2监视Node应用的变动56
3.4.3选择一款合适的文本编辑器57
3.4.4手动刷新浏览器已经过时了58
3.5总结58
第4章发布、部署和监控59
4.1发布应用60
4.1.1优化图像60
4.1.2缓存静态资源62
4.1.3内嵌对首屏至关重要的CSS64
4.1.4部署前要测试65
4.2预部署操作65
4.2.1语义化版本66
4.2.2使用更改日志67
4.2.3提升版本号时提交更改日志67
4.3部署到Heroku68
4.3.1在Heroku的服务器中构建70
4.3.2管理多个环境71
4.4持续集成71
4.4.1使用Travis托管的CI72
4.4.2持续部署73
4.5监控和诊断74
4.5.1日志和通知74
4.5.2调试Node应用76
4.5.3分析性能78
4.5.4运行时间和进程管理78
4.6总结79
第二部分管理复杂度
第5章理解模块化和依赖管理82
5.1封装代码83
5.1.1理解单一职责原则84
5.1.2信息隐藏和接口86
5.1.3作用域和this关键字87
5.1.4严格模式90
5.1.5提升变量的作用域91
5.2JavaScript模块92
5.2.1闭包和模块模式92
5.2.2原型的模块化93
5.2.3CommonJS模块94
5.3管理依赖95
5.3.1依赖图95
5.3.2介绍RequireJS98
5.3.3Browserify:在浏览器中使用CJS 模块100
5.3.4Angular管理依赖的方式100
5.4理解包管理102
5.4.1Bower 简介103
5.4.2大型库,小组件104
5.4.3选择合适的模块系统105
5.4.4学习循环依赖105
5.5ECMAScript 6新功能简介106
5.5.1在Grunt任务中使用Traceur107
5.5.2Harmony中的模块107
5.5.3创建块级作用域的let关键字108
5.6总结109
第6章理解JavaScript中的异步流程控制方法110
6.1使用回调110
6.1.1跳出回调之坑111
6.1.2解开混乱的回调112
6.1.3嵌套请求114
6.1.4处理异步流程中的错误116
6.2使用async库119
6.2.1使用瀑布式、串行还是并行119
6.2.2异步函数式任务123
6.2.3异步任务队列124
6.2.4制定流程和动态流程125
6.3使用Promise对象127
6.3.1Promise对象基础知识127
6.3.2链接Promise对象130
6.3.3控制流程132
6.3.4处理被拒绝的Promise对象133
6.4理解事件134
6.4.1事件和DOM134
6.4.2自己实现事件发射器135
6.5展望:ES6生成器138
6.5.1创建第一个生成器138
6.5.2生成器的异步性140
6.6总结141
第7章使用模型-视图-控制器模式142
7.1jQuery力不胜任142
7.2在JavaScript中使用MVC模式145
7.2.1为什么使用Backbone146
7.2.2安装Backbone147
7.2.3使用Grunt和Browserify编译Backbone模块147
7.3介绍Backbone 148
7.3.1Backbone视图149
7.3.2创建Backbone模型152
7.3.3使用Backbone集合组织模型154
7.3.4添加Backbone路由器155
7.4案例分析:购物清单157
7.4.1从静态购物清单开始157
7.4.2添加删除按钮159
7.4.3把物品添加到购物车中161
7.4.4实现行内编辑164
7.4.5服务层和视图路由170
7.5Backbone和Rendr:服务器和客户端共享渲染172
7.5.1Rendr简介172
7.5.2理解Rendr 的样板代码174
7.5.3一个简单的Rendr应用176
7.6总结182
第8章测试JavaScript组件184
8.1JavaScript测试速成课185
8.1.1隔离逻辑单元185
8.1.2使用TAP186
8.1.3编写第一个单元测试186
8.1.4在浏览器中运行使用Tape编写的测试187
8.1.5筹备、行动和断言188
8.1.6单元测试188
8.1.7便利性优于约定189
8.1.8案例分析:为事件发射器编写单元测试189
8.1.9测试事件发射器190
8.1.10测试.on方法192
8.1.11驭件、侦件和代理193
8.1.12模拟194
8.1.13介绍Sinon.js195
8.1.14监视函数的调用情况195
8.1.15代理require调用196
8.2在浏览器中测试198
8.2.1伪造XHR请求和服务器响应198
8.2.2案例分析:测试DOM交互200
8.3案例分析:为使用MVC模式开发的购物清单编写单元测试209
8.3.1测试视图路由器209
8.3.2测试视图模型的验证214
8.4自动运行Tape测试216
8.4.1自动运行浏览器中的Tape测试217
8.4.2持续测试218
8.5集成测试、外观测试和性能测试218
8.5.1集成测试219
8.5.2外观测试219
8.5.3性能测试220
8.6总结221
第9章REST API设计和分层服务架构222
9.1规避API设计误区222
9.2学习REST API设计223
9.2.1端点、HTTP方法和版本224
9.2.2请求、响应和状态码227
9.2.3分页、缓存和限流229
9.2.4为API编写文档231
9.3实现分层服务架构232
9.3.1路由层233
9.3.2服务层233
9.3.3数据层234
9.3.4路由层234
9.3.5服务层234
9.3.6数据层235
9.4在客户端使用REST API235
9.4.1请求处理层236
9.4.2中止旧请求236
9.4.3使用一致的方式处理AJAX错误237
9.5总结238
附录ANode.js的模块240
附录B介绍Grunt242
附录C选择合适的构建工具249
附录DJavaScript代码质量指南257

Specifications

Brand Jingdong book
Brand Origin China

Disclaimer

Product packaging, specifications and price are subject to change without notice. All information about the products on our website is provided for information purposes only. Please always read labels, warnings and directions provided with the product before use.

View Full Terms of Use
Add to favorites
{{ $isZh ? coupon.coupon_name_sub : coupon.coupon_ename_sub | formatCurrency }}
{{__("Buy Directly")}} {{ itemCurrency }}{{ item.directly_price }}
Quantity
{{ quantity }}
{{ instockMsg }}
{{ limitText }}
{{buttonTypePin == 3 ? __("Scan to view more PinGo") : __("Scan to start")}}
Sold by JD@CHINA
Ship to
{{ __("Ship to United States only") }}
Free shipping over 69
Genuine guarantee

Added to Cart

Keep Shopping

More to Consider

{{ item.brand_name }}

{{ item.item_name }}

{{ item.currency }}{{ item.market_price }}

{{ item.currency }}{{ item.unit_price }}

{{ item.currency }}{{ item.unit_price }}

Coupons

{{ coupon.coupon_name_new | formatCurrency }}
Clip Clipped Over
{{ getCouponDescStr(coupon) }}
{{ coupon.use_time_desc }}
Expires soon {{ formatTime(coupon.use_end_time) }}

Share this item with friends

Cancel

Yami Gift Card

Get this exclusive deal when paying with gift card

Terms and Conditions

Gift card deals are special offers for selected products;

The gift card deals will automatically be activated if a customer uses gift card balance at check out and the balance is sufficient to pay for the total price of the shopping cart products with gift card deals;

You will not be able to activate the gift card deals if you choose other payment methods besides gift card. The products will be purchased at their normal prices;

If your account balance is not enough to pay for the products with gift card deals, you can choose to reload your gift card balance by clicking on the Reload button at either shopping cart page or check out page;

Products that have gift card deals can be recognized by a special symbol showing 'GC Deal';

For any additional questions or concerns, please contact our customer service;

Yamibuy reserves the right of final interpretation.

Sold by Yami

Service Guarantee

Yami Free Shipping over $49
Yami Easy Returns
Yami Ships from United States

Shipping

  • United States

    Standard Shipping is $5.99 (Excluding Alaska & Hawaii). Free on orders of $49 or more.

    Local Express is $5.99 (Available in Parts of CA, NJ, MA & PA). Free on orders of $49 or more.

    2-Day Express (Includes Alaska & Hawaii) starts at $19.99.

Return Policy

Yami is committed to provide our customers with a peace of mind when purchasing from us. Most items shipped from Yamibuy.com can be returned within 30 days of receipt of shipment (For Food, Beverages, Snacks, Dry Goods, Health supplements, Fresh Grocery and Perishables Goods, within 7 days of receipt of shipment due to damages or quality issues; To ensure that every customer receives safe and high-quality products, we do not provide refunds or returns for beauty products once they have been opened or used, except in the case of quality issues; Some products may have different policies or requirements associated with them, please see below for products under special categories, or contact Yami Customer Service for further assistance).
Thank you for your understanding and support.

Learn More

Sold by Yami

Terms and Conditions of Yami E-Gift Card

If you choose “Redeem automatically” as your delivery method, your gift card balance will be reload automatically after your order has been processed successfully;

If you choose “Send to Email”as your delivery method, the card number and CVV will be sent to the email address automatically;

Any user can use the card number and CVV to redeem the gift card, please keep your gift card information safely. If you have any trouble receiving email, please contact Yami customer service;

Yami gift card can be used to purchase both Yami owned or Marketplace products;

Yami gift card will never expire;

Yami gift card balance does not have to be used up at once;

All rights reserved by Yami.

Return Policy

Gift card that has already been consumed is non-refundable.

Sold by JD@CHINA

Service Guarantee

Yami Free Shipping over $49
Yami Easy Returns
Yami Ships from United States

Shipping

  • United States

    Standard Shipping is $5.99 (Excluding Alaska & Hawaii). Free on orders of $49 or more.

    Local Express is $5.99 (Available in Parts of CA, NJ, MA & PA). Free on orders of $49 or more.

    2-Day Express (Includes Alaska & Hawaii) starts at $19.99.

Return Policy

You may return product within 30 days upon receiving the product. Items returned must be new in it's original packing, including the original invoice for the purchase. Customer return product at their own expense.

Sold by JD@CHINA

Service Guarantee

Yami Cross-store Free Shipping over $69
Yami 30-days Return

Yami-China FC

Yami has a consolidation warehouse in China which collects multiple sellers’ packages and combines to one order. Our Yami consolidation warehouse will directly ship the packages to your door. Cross-store free shipping over $69.

Return Policy

You may return products within 30 days upon receiving the products. Sellers take responsibilities for any wrong shipment or missing items. Packing needs to be unopened for any other than quality issues return. We promise to pack carefully, but because goods are taking long journey to destinations, simple damages to packaging may occur. Any damages not causing internal goods quality problems are not allowed to return. If you open the package and any quality problem is found, please contact customer service within three days after receipt of goods.

Shipping Information

Yami Consolidation Service Shipping Fee $9.99(Free shipping over $69)

Sellers in China will ship their orders within 1-2 business days once the order is placed. Packages are sent to our consolidation warehouse in China and combined there. Our Yami consolidation warehouse will directly ship the packages to you via UPS. The average time for UPS to ship from China to the United States is about 10 working days and it can be traced using the tracking number. Due to the pandemic, the delivery time may be delayed by about 5 days. The package needs to be signed by the guest. If the receipt is not signed, the customer shall bear the risk of loss of the package.

Sold by JD@CHINA

Service Guarantee

Free shipping over 69
Genuine guarantee

Shipping

Yami Consolidated Shipping $9.99(Free shipping over $69)


Seller will ship the orders within 1-2 business days. The logistics time limit is expected to be 7-15 working days. In case of customs clearance, the delivery time will be extended by 3-7 days. The final receipt date is subject to the information of the postal company.

Yami Points information

All items are excluding from any promotion or points events on Yamibuy.com

Return Policy

You may return product within 30 days upon receiving the product. Items returned must be new in it's original packing, including the original invoice for the purchase. Customer return product at their own expense.

Yami

Download the Yami App

Back Top

Recommended for You

About the brand

Jingdong book

为您推荐

Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折
Yami
欣葉
2种选择
欣叶 御大福 芋头麻薯 180g

周销量 600+

$1.66 $1.99 83折

Reviews{{'('+ commentList.posts_count + ')'}}

Have your say. Be the first to help other guests.

Write a review
{{ totalRating }} Write a review
  • {{i}} star

    {{i}} stars

    {{ parseInt(commentRatingList[i]) }}%

Yami Yami
{{ comment.user_name }}

{{ showTranslate(comment) }}Show Less

{{ strLimit(comment,800) }}Show more

Show Original

{{ comment.content }}

Yami
Show All

{{ formatTime(comment.in_dtm) }} VERIFIED PURCHASE {{groupData}}

{{ comment.likes_count }} {{ comment.likes_count }} {{ comment.reply_count }} {{comment.in_user==uid ? __('Delete') : __('Report')}}
Yami Yami
{{ comment.user_name }}

{{ showTranslate(comment) }}Show Less

{{ strLimit(comment,800) }}Show more

Show Original

{{ comment.content }}

Yami
Show All

{{ formatTime(comment.in_dtm) }} VERIFIED PURCHASE {{groupData}}

{{ comment.likes_count }} {{ comment.likes_count }} {{ comment.reply_count }} {{comment.in_user==uid ? __('Delete') : __('Report')}}

No related comment~

Review

Yami Yami

{{ showTranslate(commentDetails) }}Show Less

{{ strLimit(commentDetails,800) }}Show more

Show Original

{{ commentDetails.content }}

Yami
Show All

{{ formatTime(commentDetails.in_dtm) }} VERIFIED PURCHASE {{groupData}}

{{ commentDetails.likes_count }} {{ commentDetails.likes_count }} {{ commentDetails.reply_count }} {{commentDetails.in_user==uid ? __('Delete') : __('Report')}}

Please write at least one word

Comments{{'(' + replyList.length + ')'}}

Yami Yami

{{ showTranslate(reply) }}Show Less

{{ strLimit(reply,800) }}Show more

Show Original

{{ reply.reply_content }}

{{ formatTime(reply.reply_in_dtm) }}

{{ reply.reply_likes_count }} {{ reply.reply_likes_count }} {{ reply.reply_reply_count }} {{reply.reply_in_user==uid ? __('Delete') : __('Report')}}

Please write at least one word

Cancel

That’s all the comments so far!

Write a review
How would you rate this item?

Please add your comment.

  • A nice nickname will make your comments more popular!
  • The nickname in your account will be changed to the same as here.
Thanks for your review
Our community rely on great reviews like yours to find the best of Asia.

Report

If you find this content inappropriate and think it should be removed from the Yami.com site, let us know please.

Cancel

Are you sure to delete your review?

Cancel

You’ve Recently Viewed

About the brand

Jingdong book