返回首页
苏宁会员
购物车 0
易付宝
手机苏宁

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

  • 服务承诺: 正品保障
  • 公司名称:
  • 所 在 地:

  • Effective TypeScript:精进TypeScript代码的62个实践方法
  • 新华书店正版
    • 作者: [美]丹·范德卡姆(Dan Vanderkam),王瑞鹏,董强著
    • 出版社: 中国电力出版社
    • 出版时间:2021-11-01 00:00:00
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    文轩网图书旗舰店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

    商品分类

         https://product.suning.com/0070067633/11555288247.html

     

    商品参数
    • 作者: [美]丹·范德卡姆(Dan Vanderkam),王瑞鹏,董强著
    • 出版社:中国电力出版社
    • 出版时间:2021-11-01 00:00:00
    • 版次:1
    • 印次:1
    • 字数:417000
    • 页数:320
    • 开本:16开
    • 装帧:平装
    • ISBN:9787519859381
    • 国别/地区:中国
    • 版权提供:中国电力出版社

    Effective TypeScript:精进TypeScript代码的62个实践方法

    作  者:[美]丹·范德卡姆(Dan Vanderkam),王瑞鹏,董强 著
    定  价:98
    出 版 社:中国电力出版社
    出版日期:2021年11月01日
    页  数:320
    装  帧:平装
    ISBN:9787519859381
    主编推荐

    内容简介

    本书的主要内容有:·学习TypeScript的类型系统的基本内容。设计类型,让你的代码更安全,更易懂。使用类型推断,用很少的类型标注来获得接近的安全。战术性利用any类型。了解TypeScript中的依赖关系和类型声明文件是如何工作的。将你的JavaScript代码库成功地迁移到 TypeScript。

    作者简介

    精彩内容

    目录
    目录
    前言 .1
    章 了解TypeScript 11
    条款1:理解 TypeScript 与 JavaScript 的关系 11
    要记住的事情 18
    条款2:知道你在使用哪个 TypeScript 选项 18
    要记住的事情 22
    条款3:理解代码的生成是独立于类型的 . 22
    类型错误的代码仍会产生输出 23
    你无法在运行时检查 TypeScript 类型 24
    类型操作不能影响运行时的值 26
    运行时类型可能与声明类型不一样 . 27
    你不能基于 TypeScript 类型来重载一个函数 . 28
    TypeScript 类型对运行时的性能没有影响 29
    要记住的事情 30
    条款4:习惯结构类型(Structural Typing). 30
    要记住的事情 35
    条款5:限制使用any 类型 35
    any 类型没有类型安全 36
    any 类型会让你打破契约 36
    any 类型没有语言服务 37
    any 类型会掩盖重构代码时的错误 38
    any 类型遮蔽了你的类型设计 . 39
    any 类型破坏了你对类型系统的信心 40
    要记住的事情 40
    第2 章 TypeScript 的类型系统 41
    条款6:使用你的编辑器来询问和探索类型系统 41
    要记住的事情 46
    条款7:将类型视为价值的集合 . 46
    要记住的事情 53
    条款8:知道如何分辨符号是类型空间还是值空间 . 54
    要记住的事情 60
    条款9:优先选择类型声明而不是类型断言 60
    要记住的事情 64
    条款10:避免对象包装类(String,Number,Boolean,Symbol,BigInt) 64
    要记住的事情 68
    条款11:认识额外属性检查的局限性 . 68
    要记住的事情 72
    条款12:尽可能将类型应用于整个函数表达式 . 72
    要记住的事情 75
    条款13:了解类型(type)和接口(interface)的区别 75
    要记住的事情 81
    条款14:使用类型操作和泛型来避免重复自己的工作 81
    要记住的事情 90
    条款15:为动态数据使用索引签名 . 91
    要记住的事情 95
    条款16:优先选择 Array、Tuple 和 ArrayLike,而不是数字索引签名. 95
    要记住的事情 99
    条款17:使用 readonly 避免值变(Mutation)相关的错误. 99
    要记住的事情 107
    条款18:使用映射类型来保持值的同步 . 107
    要记住的事情 110
    第3 章 类型推断 111
    条款19:避免你的代码被可推断类型弄得混乱不堪 112
    要记住的事情 119
    条款20:不同的类型使用不同的变量 119
    要记住的事情 122
    条款21:理解类型扩展 122
    要记住的事情 126
    条款22:理解类型收缩 127
    要记住的事情 130
    条款23:一次性构建对象 131
    要记住的事情 134
    条款24:在使用别名时要保持一致 134
    要记住的事情 138
    条款25:使用async 函数代替异步代码的回调 138
    要记住的事情 144
    条款26:了解类型推断中如何使用上下文 144
    元组类型 . 146
    对象 148
    回调 148
    要记住的事情 149
    条款27:使用函数式构造和库来帮助类型流转 150
    要记住的事情 155
    第4 章 类型设计 156
    条款28:倾向选择总是代表有效状态的类型 156
    要记住的事情 162
    条款29:宽进严出 163
    要记住的事情 166
    条款30:不要在文档中重复类型信息 167
    要记住的事情 169
    条款31:将空值推到你的类型边界上 169
    要记住的事情 173
    条款32:优选接口的联合,而不是联合的接口 173
    要记住的事情 177
    条款33:选择更精确的字符串类型的替代类型 178
    要记住的事情 182
    条款34:宁愿选择不完整的类型,也不选择不准确的类型 . 183
    要记住的事情 187
    条款35:从 API 和规范而不是从数据中生成类型 . 188
    要记住的事情 194
    条款36:使用你的问题域语言命名类型 . 194
    要记住的事情 197
    条款37:考虑加“烙印”来实现名义类型 197
    要记住的事情 201
    第5 章 和 Any 一起工作. 202
    条款38:为 Any 类型使用最窄的范围 . 202
    要记住的事情 205
    条款39:比起普通的 any,选择更精确的 any 变体 . 205
    要记住的事情 207
    条款40:在类型良好的函数中隐藏不安全的类型断言 207
    要记住的事情 210
    条款41:理解 any 演变 210
    要记住的事情 214
    条款42:对未知类型的值使用 unknown 而不是 any 214
    要记住的事情 218
    条款43:选择类型安全的方法而不是猴子补丁 218
    要记住的事情 221
    条款44:追踪你的类型覆盖率以防止类型安全中的回归问题 221
    要记住的事情 224
    第6 章 类型声明和 @types 225
    条款45:把 TypeScript 和 @types 放在 devDependencies 中 225
    要记住的事情 227
    条款46:了解类型声明中涉及的三个版本 228
    要记住的事情 232
    条款47:导出所有出现在公有 API 中的类型 232
    要记住的事情 233
    条款48:使用 TSDoc 来编写 API 注释 234
    要记住的事情 237
    条款49:提供回调中 this 的类型 237
    要记住的事情 242
    条款50:优先选择条件类型,而不是重载声明 242
    要记住的事情 245
    条款51:反映类型以切断依赖 . 245
    要记住的事情 246
    条款52:警惕测试类型时的陷阱 247
    要记住的事情 252
    第7 章 编写和运行你的代码 . 253
    条款53:使用 ECMAScript 特性,而非 TypeScript 特性 253
    枚举 254
    参数属性 . 256
    命名空间和三斜线导入 258
    装饰器 258
    要记住的事情 259
    条款54:了解如何迭代对象 259
    要记住的事情 262
    条款55:了解 DOM 的层次结构 . 262
    要记住的事情 269
    条款56:不要依赖私有访问修饰符(private) 来隐藏信息 269
    要记住的事情 272
    条款57:使用 Source Maps 来调试 TypeScript 272
    要记住的事情 276
    第8 章 迁移到TypeScript . 277
    条款58:编写现代 JavaScript 278
    使用 ECMAScript 模块 279
    使用类而不是原型 . 279
    使用 let/const 代替 var . 281
    使用 for-of 或数组方法代替 for(;;) 282
    优先选择箭头函数而不是函数表达式 282
    使用对象字面量的简写形式和解构赋值 . 283
    使用默认函数参数 . 285
    使用 async/await 代替原始的 Promise 或 Callback 286
    不要把 use strict 放在 TypeScript 中 . 287
    要记住的事情 288
    条款59:使用 @ts-check 和 JSDoc 来尝试 TypeScript 288
    未声明的全局变量 . 289
    未知的库 . 289
    DOM 问题 290
    不准确的 JSDoc 291
    要记住的事情 293
    条款60:通过 allowJs 混合使用 TypeScript、JavaScript 293
    要记住的事情 295
    条款61:将模块逐个转换到依赖关系图上 295
    未声明的类成员 296
    类型不断变化的值 . 298
    要记住的事情 300
    条款62:在启用 noImplicitAny 之前,不要认为迁移已经完成 . 301
    要记住的事情 302

    售后保障

    最近浏览

    猜你喜欢

    该商品在当前城市正在进行 促销

    注:参加抢购将不再享受其他优惠活动

    x
    您已成功将商品加入收藏夹

    查看我的收藏夹

    确定

    非常抱歉,您前期未参加预订活动,
    无法支付尾款哦!

    关闭

    抱歉,您暂无任性付资格

    此时为正式期SUPER会员专享抢购期,普通会员暂不可抢购