JSDoc 3 是一个用于 JavaScript 的API文档生成器,类似于 Javadoc 或 phpDocumentor。可以将文档注释直接添加到源代码中。JSDoc 工具将扫描你的源代码并为您生成一个 HTML 文档网站(当然,即使你不进行生成,其也被大部分浏览器所识别和支持)。JSDoc 的目的是记录 JavaScript 应用程序或库的 API。假设你想要记录诸如模块、名称空间、类、方法、方法参数等内容。 JSDoc注释通常应该放在记录代码之前。为了被 JSDoc 解析器识别,每个注释必须以 /** 序列开头。以 /*、/***开头或超过3颗星的注释将被忽略。这个特性用于控制解析注释块的功能。
因此,对于.js文件,需要一种被 JavaScript 语法所兼容的类型标注方式,比如JSDoc:
本部分提供了使用 JavaScript 的技巧(最佳实践,高级技术和学习资源),并描述了一些重要的工具和库。
不知道有多少 TS 爱好者哀叹过这个问题:虽然我很想用 TS,奈何老大只让用 JS。
JavaScript已经巩固了其作为近年来最常用的脚本语言之一的地位。它以在Web平台上编写脚本的简易性而闻名。随着语言的发展,它从最初只是一个利用Java成功的“玩具”语言,发展成为一个用于构建不仅仅是小型脚本的完整语言。
但为了确保文件内容只含有标准的 JavaScript 代码,.js文件按照 ES 语法规范来检查,因而不允许出现 TypeScript 类型标注:
英文 | https://levelup.gitconnected.com/typescript-5-0-released-a-quick-overview-3d6bfdf74135
这听起来是不是很耳熟:你想写一个小型脚本,不管是为页面、命令行工具,还是其他什么类型。你从JavaScript开始,直到你想起写代码时没有类型是多么痛苦。所以你把文件从.js重命名为.ts。然后意识到你已经打开了一个麻烦的玩意儿。
工欲善其事必先利其器,在此给 Web 开发人员推荐几款优秀的开源文档生成工具,希望能对大家有所帮助。
我们知道 TypeScript 2.3 以后的版本支持使用--checkJs对.js文件进行类型检查和错误提示。 但是由于 JavaScript 是弱类型语言,在编写代码的时候,是无法检测变量的类型的。
2023年,几条关于 Typescript 的新闻打破了沉寂,让没什么新活好整的前端开发圈子又热闹了一番。
首先,JSDoc 并不会对源码产生任何的影响,所有的内容都是写在注释里边的。 所以并不需要担心 JSDoc 会对你的程序造成什么负面影响。
英文 | https://javascript.plainenglish.io/9-best-vanilla-javascript-utilities-libraries-ff752592dfb5
//(双斜线)与代码之间保留一个空格,并且//(双斜线)与注释文字之间保留一个空格。
@param参数类型 $参数名称 参数说明 - 用于指定一个函数或方法的参数类型、名称和说明。
由于 JavsScript是弱类型,所以在大型项目中使用时显得能力略有不足。从七月份在腾讯实习到现在,接触到了不少项目的代码,平均算来每天都有 70% 的时间用于阅读、理解他人的代码。每次阅读他人代码的时候,我心中都会冒出来两个强烈的愿望:要是 JavaScript是强类型的多好!要是文档能再详细一点就好了!多亏了 TypeScript和 JSDoc,这两个愿望都有变成现实的可能。
2023 年 3 月 17 日,TypeScript 5.0 正式发布!此版本带来了许多新功能,旨在使 TypeScript 更小、更简单、更快。TypeScript 5.0 实现了新的装饰器标准、更好地支持 Node 和打构建工具中的 ESM 项目的功能、库作者控制泛型推导的新方法、扩展了 JSDoc 功能、简化了配置,并进行了许多其他改进。
近期 typescript 发布 3.8版本,增加了部分新特性,下文主要围绕几个主要特性做一些介绍。
TypeScript 我们知道,是用来给 JS 加上类型的,可以实现类型提示和编译时的类型检查。
1. 安装JSDoc 3 http://usejsdoc.org/index.html npm install -g jsdoc 2. 安装jsdoc-vuejs插件 https://github.com/Kocal/jsdoc-vuejs npm install --save-dev jsdoc-vuejs 3. 配置JSDoc 新建conf.json文件 { "plugins": [ "node_modules/jsdoc-vuejs" ], "source": { "inc
[Updated 11/3/2017] 文章写在好多年前,由于时代和自身技术水平的限制,很多文中的观点都已经不准确。现在有好的多的方法和工具来完成 JavaScript 重构。
我们可以把 TypeScript 看做为 JavaScript 添加了类型注释的薄层,而类型注释可以确保不会犯任何错误。TypeScript 团队也在努力确保类型检查适用于常规 JavaScript 文件。TypeScript的编译器(tsc)以及 VSCode 等编辑器中的语言支持无需任何编译步骤,就能提供出色的开发体验。下面我们来看看如何使用。
你可能用过jsdoc,用代码里面的注释生成文档。但是苦于jsdoc生成的文档网页太不好看,目录结构不好调整。
最近在做项目代码重构,其中有一个要求是为代码添加智能提示和类型检查。智能提示,英文为 IntelliSense,能为开发者提供代码智能补全、悬浮提示、跳转定义等功能,帮助其正确并且快速完成编码。说起来,JavaScript 作为一门动态弱类型解释型语言,变量声明后可以更改类型,并且类型在运行时才能确定,由此容易产生大量代码运行中才能发现的错误,相比 Java 等静态类型语言,开发体验上确实差了一截。更烦躁的是,智能提示就是依赖于静态类型检查的,所以在以前,指望 JavaScript 的智能提示完善度追上 Java 基本不可能。当然,时代在进步,TypeScript 已经问世许久,为 JavaScript 带来了静态类型检查以及其他诸多特性。JavaScript 的智能提示也已有了解决方案。调研了一段时间后,下文以 VSCode 编辑器作为开发工具,介绍一下如何为 JavaScript 加上智能提示以及类型检查。
JSDoc是一个根据javascript文件中注释的信息,生成API文档的工具。生成的文档是html文件。类似 JavaDoc 和 PHPDoc。
本文概述了将代码库从 JavaScript 迁移到 TypeScript 的策略。还提到了需要进一步阅读的材料。
同时本文不涉及aiXcoder、Deep TabNine这类不单针对本地代码进行感知,同时还通过其他手段来提高智能提示(自动补全)效果的插件介绍。
这篇文章分享了我编写 JavaScript 代码时遵循的一套规则。但在我们深入探讨之前,我必须告诉您,我使用 JavaScript 的方式有点不同寻常。我的主要目的是仅使用一种编程语言进行高级开发,而不是 C#、F#、Java、Scala、Python 等。因此,我尽量避免非通用的 JavaScript 框架和特定于平台的工具。对于低级别和系统编程,我使用 Rust,并考虑使用 Zig 编程语言。
简单的变量声明之类的内容可以进行简单注释,但是函数就不能这样做了,要知道注释的作用是一种为了让代码更易读、易维护、易理解,起到提示的作用的,上面的两个注释都是正确的,但是它起到的作用太低了,在正式工作中我们往往会协同开发,这种注释是万万不可的。
需要备上下面三样东西 JSDocTookit http://code.google.com/p/jsdoc-toolkit/
微软的TypeScript编程语言为 JavaScript 带来了静态类型以及静态类型带来的各种优势。虽然它没有强制在运行时进行类型检查,但是它允许我们进行静态分析,这让我们的代码更加安全,并且能够更好的和 IDE 集成。当然 TypeScript 的代码一般来说是要编译成标准的 JavaScript 代码这样它才能在浏览器和 Node.js 环境中运行。鉴于这些 TypeScript 的优势,《TypeScript 正在高速成长》这篇文章的观点就变得不足为奇了。
@param @argument 指定参数名和说明来描述一个函数参数 @returns 描述函数的返回值 @author 指示代码的作者 @deprecated 指示一个函数已经废弃,而且在将来的代码版本中将彻底删除。要避免使用这段代码 @see 创建一个HTML链接,指向指定类的描述 @version 指定发布版本 @requires 创建一个HTML链接,指向这个类所需的指定类 @throws @exception 描述函数可能抛出的异常的类型 {@link} 创建一个HTML链接,指向指定的类。这与@see很类似,但{@link}能嵌在注释文本中 @fileoverview 这是一个特殊的标记。如果在文件的第一个文档块中使用这个标记,则指定该文档块的余下部分将用来提供这个文件的概述 @class 提供类的有关信息,用在构造函数的文档中 @constructor 明确一个函数是某个类的构造函数 @type 指定函数的返回类型 @extends 指示一个类派生了另一个类。JSDoc通常自己就可以检测出这种信息,不过,在某些情况下则必须使用这个标记 @private 指示一个类或函数是私有的。私有类和函数不会出现在HTML文档中,除非运行JSDoc时提供了–private命令行选项 @final 指示一个值是常量值。要记住JavaScript无法真正保证一个值是常量 @ignore JSDoc忽略有这个标记的函数
无论是使用tab还是空格,只要是一致遵循的,是什么并不重要。JSLint的默认值是4个空格来缩进。那么需要对哪些内容进行缩进呢?只需要对大括号中所有的代码进行缩进。主要包含函数体、循环体(do、while、for、for-in)、if语句、switch语句和对象字面量引用的属性。
本文我们将介绍 Compodoc 这款工具,它用于为 Angular 应用程序生成静态文档。Compodoc 能够帮助 Angular开发人员为他们的应用程序生成清晰且有用的文档,这使得参与应用程序开发的其它成员也可以轻松了解当前应用程序或库的特性。
作为专业的开发人员,我们必须不断更新最新和最好的库,因为知道好的库,那么开发过程就可以依赖于它们,这会节省我们很多时间也有助于构建高质量的软件。
开发时文件,在dist目录下添加index.html文件,引用lzugis-map.js,方便开发时调试。
先加载 Dgeni 所需要的包依赖。下一步,需要通过配置来告知dgeni如何生成我们的文档。
我们的打包配置有一个基类文件,并根据不同的打包需求,有不同子类文件——完整组件库打包、单个组件打包、打包示例工程。
2020 年 12 月 15 日,我们宣布为 JavaScript 提供 AWS SDK,版本 3 (v3). 在 v3中, 模块化包 将应用程序的捆绑大小比 AWS SDK 中的 JavaScript(版本 2)减少了75%。但是,v3 对于每个模块化包具有较大的发布/安装大小。在这篇文章中,我们报道了如何将 v3 模块化封装的发布大小减少50%。
本月,Ruby on Rails 作者 DHH 宣布移除其团队开源项目 Turbo 8 中的 TypeScript 代码。
##ESLint配置信息完整版 #####说明: "no-undef": 0,和"no-undef": 'off',一样,表示关闭该功能 "no-undef": 1, 表示仅提示 "no-undef": 2, 表示报错 ####配置信息(来自网络) “no-alert”: 0,//禁止使用alert confirm prompt “no-array-constructor”: 2,//禁止使用数组构造器 “no-bitwise”: 0,//禁止使用按位运算符 “no-caller”: 1,//禁止使用a
经常看到d.ts,因为一个越来越广泛的应用场景是编辑器智能提示(具体见IntelliSense based on TypeScript Declaration Files):
在一个风和日丽的早晨,我正悠闲地喝着Coffe,突然领导向我走来,我赶紧熟练地切出VSCode,淡定自若地问:领导,什么事?领导拍了拍我的肩膀:你上次封装的方法同事跟我反馈使用起来很不错啊,你不如做成JS插件给大家用吧。我放下了手中的马克杯,甩了一下眼前仅剩的几根刘海:没问题啊,小Case!随即开始摸鱼....
我之前写了一篇《如何把 Node.js 项目从 JavaScript 迁移到 TypeScript 的指南》。指南的阅读量超过了七千,不过其实当时我对 JavaScript 和 TypeScript 的了解并不深入,把重心更多地放到特定工具上,而没怎么从全局着手。最大的问题是我没有提供迁移大型项目的解决方案。
最近向一些同事推荐了网页中实现流程图绘制的工具库jsplumb.js,Community版本是开源的,在github的官方仓库的Wiki中能够找到社区版的官方指南,非常非常详细。但是在后来很多人反馈说找不到API文档,github官方仓库中的API文档链接失效了,jsplumb.js官网也找不到。
本文概述了 TypeScript 的工作原理:典型的 TypeScript 项目的结构是什么?什么被编译以及怎样编译?我们如何使用 IDE 编写 TypeScript?
领取专属 10元无门槛券
手把手带您无忧上云