整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

2024年开发人员必备的VS Code插件

2024年开发人员必备的VS Code插件

isual Studio Code(简称VSCode)是一个由微软开发的免费、开源的代码编辑器。

VSCode 发布于 2015 年,而且很快就成为开发者社区中广受欢迎的开发工具。

VSCode 可用于 Windows、macOS 和 Linux 等操作系统。

VSCode 拥有一个庞大的扩展市场,用户可以根据自己的需要安装各种扩展来增强编辑器的功能,包括语言支持、代码格式化工具、版本控制集成、主题和图标等。

我们可以在 VSCode 上轻松查找并安装扩展:

接下来我们来看下2024 年开发人员必备 VS Code 插件:

1、Live Server

Live Server 插件为开发者提供了一个本地服务器,可以实时显示 HTML、CSS 和 JavaScript 文件的修改。

Live Server 通过内置的本地服务器简化了网页开发和测试过程,使用这个扩展,你可以一键启动服务,实时查看代码更改的效果,从而提高开发效率。

扩展搜索关键词:Live Server

插件链接地址:https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer

效果演示:

2、Markdown All in One

Markdown All in One 为 Markdown 文件提供了增强的编辑体验,包括实时预览、快捷键、自动生成目录、以及对 GitHub 风格 Markdown 的支持,使得 Markdown 文档的编写和阅读更加高效和直观。

Markdown All in One 支持 LaTeX 数学表达式的渲染,还支持将 Markdown 文档转换为 HTML 格式。

扩展搜索关键词:Markdown All in One

插件链接地址:https://marketplace.visualstudio.com/items?itemName=yzhang.markdown-all-in-one

列表编辑演示:

3、GitLens

GitLens 通过提供详细的提交历史、代码作者信息和图形化的分支视图,极大地增强了 VS Code 的 Git 功能。

使用 GitLens,开发者可以轻松地追踪和管理代码变更,从而优化团队协作和代码审查过程。

扩展搜索关键词:GitLens

插件链接地址:https://marketplace.visualstudio.com/items?itemName=eamodio.gitlens

只需单击按钮,您就可以浏览任何文件的历史记录,比较一段时间内的更改并查看整个文件或单个行的修订历史记录。

4、Code Spell Checker

Code Spell Checker 通过扫描代码中的英文拼写错误,帮助开发者维护代码的准确性和专业性,确保变量名、注释和文档的清晰和正确。

Code Spell Checker 支持自动检测和提供修正建议,从而提升代码的整体质量和可读性。

扩展搜索关键词:Code Spell Checker

插件链接地址:https://marketplace.visualstudio.com/items?itemName=eamodio.gitlens

演示:

5、Beautify

Beautify 可以自动美化和格式化 JavaScript、JSON、CSS、Sass 和 HTML 代码,支持自定义配置以符合不同的编码风格,让代码更加整洁易读。

目前该扩展已不再维护。

扩展搜索关键词:Beautify

插件链接地址:https://marketplace.visualstudio.com/items?itemName=HookyQR.beautify

6、Better Comments

Better Comments 通过允许开发者使用不同的标记和格式来分类和突出显示代码中的注释,从而提高注释的可读性和组织性,使得代码更加易于维护和理解。

扩展搜索关键词:Better Comments

插件链接地址:https://marketplace.visualstudio.com/items?itemName=aaron-bond.better-comments

例子:

avascript是一种高级编程语言,通过解释执行。它是一门动态类型,面向对象(基于原型)的直译语言。它已经由欧洲电脑制造商协会通过ECMAScript实现语言标准化,它被世界上的绝大多数网站所使用。也被世界主流浏览器(Chrome、IE、FireFox等)支持。

  • JavaScript组成部分
  1. 文档对象类型: (DOM) document object module
  2. 浏览器对象类型:(BOM) broswer object module
  • JavaScript能干嘛?
  1. 在HTML静态页面中写动态效果
  2. 对浏览器事件作出响应
  3. 在数据提交到后台之前进行数据验证
  4. 通过node.js擦作数据库
  • JavaScript的特点
  1. 脚本语言
  2. 基于对象
  3. 动态性
  4. 跨平台

好了,以上小伙伴们就已经了解了JavaScript是做什么的了,也了解了它的特点,那么下面小编就介绍一些JavaScript的实用小技巧。

1.删除数组尾部元素

一个简单方法就是改变数组的 length值:

const arr=[11, 22, 33, 44, 55, 66];

// truncanting

arr.length=3;

console.log(arr); //=> [11, 22, 33]

// clearing

arr.length=0;

console.log(arr); //=> []

console.log(arr[2]); //=> undefined

2.使用对象解构(object destructuring)来模拟命名参数

如果需要将一系列可选项作为参数传入函数,你很可能会使用对象(Object)来定义配置(Config)。

doSomething({ foo: 'Hello', bar: 'Hey!', baz: 42 });

function doSomething(config) {

const foo=config.foo !==undefined ? config.foo : 'Hi';

const bar=config.bar !==undefined ? config.bar : 'Yo!';

const baz=config.baz !==undefined ? config.baz : 13;

// ...

}

不过这是一个比较老的方法了,它模拟了 JavaScript 中的命名参数。

在 ES6 中,你可以直接使用对象解构:

function doSomething({ foo='Hi', bar='Yo!', baz=13 }) {

// ...

}

让参数可选也很简单:

function doSomething({ foo='Hi', bar='Yo!', baz=13 }={}) {

// ...

}

3.使用对象解构来处理数组

可以使用对象解构的语法来获取数组的元素:

const csvFileLine='1997,John Doe,US,john@doe.com,New York';

const { 2: country, 4: state }=csvFileLine.split(',');

4.在 Switch 语句中使用范围值

可以这样写满足范围值的语句:

function getWaterState(tempInCelsius) {

let state;

switch (true) {

case (tempInCelsius <=0):

state='Solid';

break;

case (tempInCelsius > 0 && tempInCelsius < 100):

state='Liquid';

break;

default:

state='Gas';

}

return state;

}

5.await 多个 async 函数

在使用 async/await 的时候,可以使用 Promise.all 来 await 多个 async 函数

await Promise.all([anAsyncCall(), thisIsAlsoAsync(), oneMore()])

6.创建 pure objects

你可以创建一个 100% pure object,它不从 Object中继承任何属性或则方法(比如 constructortoString()等)

const pureObject=Object.create(null);

console.log(pureObject); //=> {}

console.log(pureObject.constructor); //=> undefined

console.log(pureObject.toString); //=> undefined

console.log(pureObject.hasOwnProperty); //=> undefined

7.格式化 JSON 代码

JSON.stringify除了可以将一个对象字符化,还可以格式化输出 JSON 对象

const obj={

foo: { bar: [11, 22, 33, 44], baz: { bing: true, boom: 'Hello' } }

};

// The third parameter is the number of spaces used to

// beautify the JSON output.

JSON.stringify(obj, null, 4);

//=>"{

//=> "foo": {

//=> "bar": [

//=> 11,

//=> 22,

//=> 33,

//=> 44

//=> ],

//=> "baz": {

//=> "bing": true,

//=> "boom": "Hello"

//=> }

//=> }

//=>}"

8.从数组中移除重复元素

通过使用集合语法和 Spread 操作,可以很容易将重复的元素移除:

const removeDuplicateItems=arr=> [...new Set(arr)];

removeDuplicateItems([42, 'foo', 42, 'foo', true, true]);

//=> [42, "foo", true]

9.平铺多维数组

使用 Spread 操作平铺嵌套多维数组:

const arr=[11, [22, 33], [44, 55], 66];

const flatArr=[].concat(...arr);

//=> [11, 22, 33, 44, 55, 66]

不过上面的方法仅适用于二维数组,但是通过递归,就可以平铺任意维度的嵌套数组了:

function flattenArray(arr) {

const flattened=[].concat(...arr);

return flattened.some(item=> Array.isArray(item)) ?

flattenArray(flattened) : flatt

ened;

}

const arr=[11, [22, 33], [44, [55, 66, [77, [88]], 99]]];

const flatArr=flattenArray(arr);

//=> [11, 22, 33, 44, 55, 66, 77, 88, 99]

希望这些小技巧能帮助你写好 JavaScript ~

分享 IT 技术和行业经验,请关注-技术学派。


者:Ann Adaya

译者:pftom 图雀社区

转发链接:https://mp.weixin.qq.com/s/9qBQwvaIrcL5Q5_i5GXlTA

原文链接:https://medium.com/better-programming/how-to-use-vscode-like-a-pro-e120c428f45f