首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Dart语言基础语法(一)

,可以省略花括号 var aStr2 = "hello,$name"; // hello,王五 // 拼接一个表达式,则不能省略花括号 var str1 = "link"; var str2...greet(name){ return "hello,$name"; } 要注意,函数也是对象,所有函数都有返回值。没有指定返回值时候,函数返回null。...命名可选参数 先来看一下命名参数,它使用花括号来定义参数列表 // 定义一个函数参数列表用花括号包裹 enableFlags({bool bold, bool hidden}) { // do...箭头函数 Dart中箭头函数与JavaScript中基本相同。函数体中只包含一个语句,我们就可以使用=>箭头语法进行缩写。注意,箭头函数仅仅只是一个简洁表达语法糖。...x, num y) => x + y; print(add(18,12)); // 30 箭头函数省略了花括号表达,箭头后面跟一个表达式,函数返回值也就是这个表达式值。

2.5K30

【JS】332- 为什么我更喜欢对象而不是 switch 语句

别急,好像我们有一个问题…… 如果我们调用带有参数函数,会发生什么'vscode'或 fakeEditor 不是?嗯,让我们来看看: 它会寻找对象中键。...对于 key 为 fakeEditor 也会有同样问题 Oh no, 好吧,不要惊慌,让我们来解决这个问题: const isNotOpenSource = editor => { const...我认为我们应该更关心为什么我们需要一个返回布尔值,未定义值或字符串函数,这里存在严重不一致性,无论如何,对于这样一个非常棘手情况这也只是一个可能解决方案。...由于我们正在使用对象,所以我们将占用内存中一些临时空间来存储它们,定义对象作用域不再可访问这个空间将被垃圾收集器释放。...没有太多情况需要处理,对象方法可能比 switch 语句速度要慢,这可能是因为我们正在创建一个数据结构,然后接收一个键,然而在 switch 中,我们只是检查值并返回值。

1.3K40
您找到你想要的搜索结果了吗?
是的
没有找到

千万别再一直无脑使用ES6箭头函数了,它虽然很有用但并不是万能

不过确实,箭头函数看起来比较简洁,用起来也舒服,不过它出现是为了解决某一部分问题,并不是用来替代普通函数,所以我们不能在每一个地方都使用箭头函数。...) } 如果函数只需要传一个参数,我们可以去掉箭头函数括号;若传入多个参数,小括号还是要加上哦 let fn2 = data => { console.log(data) } 其实这个例子中,console.log...首先ES6新增了箭头函数这个东西,一定是为了解决某个问题。...那么箭头函数就可以解决这种情况。普通函数this是运行时绑定,箭头函数this是定义绑定。...三、箭头函数注意点 箭头函数内没有this,如果在箭头函数内使用this,自动往上寻找,直到找到this才停止寻找。

68610

协调eslint和prettier,让代码书写更加流畅

---- 前言 最近在和同事合作开发一个项目,忘记一开始约定好项目的规范和格式,导致大家都按照自己习惯去配置了eslint,prettier,合并代码后就有了下面的情形: 所以,预先需要协调prettier...和eslint配置,而在梳理两种工具使用时,遇到了一些问题,写下本文记录下来。...eslint 对于eslint,想必大家都不陌生,是在我们日常开发中用于代码格式检查工具,而关于eslint详细配置,不是本文今天重点,今天我们要说,是如何在工程建设中灵活使用它。...git husky配置 配置eslint是为了让我们找出格式错误,但有时候我们忘记解决代码中eslint报错,将有问题代码提交到远端仓库,所以我们需要在 git husky中,配置eslint检查规则...... // #在对象或数组最后一个元素后面不加逗号  "prettier.trailingComma": "all", //  (x) => {} 箭头函数参数只有一个是否要有小括号

1.5K20

使用eslint + prettier + husky + lint-staged 约束项目的最佳实践!

前言 大家好,我是HoMeTown,最近在搭建一个公司与某一线大厂有合作,需要做一个性能极其优化微信小程序,我们组正好刚从企微项目里抽出身来,所以这个艰巨任务就交给我们来完成了,首先开了一天,跟合作方前端经理...PM 确定好了技术选型以及规范,分工细则下来以后,得到项目架构&少许业务开发任务,优化交给合作方去做,因此这个项目会有很多人参与进来,一个强有力项目约束是十分重要!...eslint 概念 eslint是一个集大成语法校验工具,他帮你去规范你代码,也帮你fix一部分小问题,支持extends、plugin、rules等属性,他原理我也在 【源码角度】7分钟带你搞懂...再执行npm run lint 可以看到已经报错了~ 配置成功 prettier 概念 prettier是一个代码格式化工具,配合vscode自动保存可以保证代码风格统一。...: false, // 箭头函数只有一个参数时候,无需括号 arrowParens: 'avoid', // 每个文件格式化范围是文件全部内容 rangeStart: 0, rangeEnd

1.6K21

JavaScript中箭头函数

前言 本文可以让你了解所有有关JavaScript箭头函数信息。我们将告诉你如何使用ES6箭头语法,以及在代码中使用箭头函数需要注意一些常见错误。你会看到很多例子来说明它们是如何工作。...这个内部函数又有一个叫做name参数,并使用greeting和name值返回一个字符串。...正如你刚才注意到,当你在一个箭头函数中使用大括号,你不能省略return关键字。...,只有当匿名函数被分配给一个变量这个可以推断name属性才会存在,正如上面的例子。...这个推断name属性仍然不能作为一个适当标识符,你可以用它来指代函数本身--比如递归、解除绑定事件等。 如何处理this关键字 关于箭头函数,最重要一点是它们处理this关键字方式。

2.1K20

vscode代码整理插件_vscode安装离线插件

1.中文插件 Chinese (Simplified) Language Pack for Visual Studio Code Auto Close Tag (自动补全html标签) Bracket...Pair Colorizer(括号颜色不同,更容易看) 代码括号颜色会对应,更容易看 Easy LESS(less语法) 配置说明: 在vsCode中使用Less方法: 在vsCode...插件管理搜索插件 Easy LESS安装,(如没安装node.js先安装一下) 在项目根目录如没有.vscode目录,需要创建.vscode目录,添加一个配置文件:settings.json 内容如下:...,true的话自动生成一个 .css.map 文件 "out": true, // 是否输出css文件,false为不输出 "outExt": ".css", // 输出文件后缀...因为使用了一些折行敏感型渲染器(如GitHub comment)而按照markdown文本样式进行折行 "prettier.arrowParens": "avoid", // (x) => {} 箭头函数参数只有一个是否要有小括号

1.5K30

关于eslint

代码检查是一种静态分析,常用于寻找有问题模式或者代码,并且不依赖于具体编码风格。对大多数编程语言来说都会有代码检查,一般来说编译程序内置检查工具。...是vue-cli 自带 第二种:使用vscode 插件,可以在编写代码校验,提示错误,并自动保存修复错误。...,写入 json 配置 image.png 禁用其他代码格式插件 此时,eslint vscode 配置好了,同时也要注意,如果你 vscode 安装了自动辅助代码格式插件,请在项目的工作区禁用。...image.png 取消 Format on Save 另外,需要将 Format on Save 这个选项勾选状态去掉,否则会影响 eslint 自动保存 image.png ESLint 特点...package.json - 在 package.json 里创建一个 eslintConfig属性,在那里定义你配置。 如果同一个目录下有多个配置文件,ESLint 只会使用一个

3K20

前端-团队效率-vscode插件自动补充ts类型

ts写法,依然有bug存在以及需要手工调整 需求背景 ts类型补充是代码健壮性保证之一 类型引用层级与个人代码水平各异导致类型不能全部补充,写ts和写es5差距不大,反而有些本末倒置意思 常见解决方案...代码提示,在vscode中有各种各样代码提示插件,本人也安装了一个小众由webpack作者发布插件ts-inline-types 举一反三 基于这些大牛想法与代码,我想了想既然可以提示ts类型...(message:"s") // 正确书写内容 console.log("s") 难点二:算法排序,在提示是不需要考虑代码位移问题,在书写,前面代码插入会导致后面代码插入位置不正确 难点三:特殊场景例如其他探索暂时未知...// 箭头函数括号写法 ()=>{} // 箭头函数不带括号写法 e=>{} 同样是箭头函数解析时候位置就不一样 难点四:vscode插件中api使用 git地址 github.com/fodelf.../auto… 后续 与工程化相结合,在代码提交,进行代码验证与补偿 再后续 做一个gitlab机器人,代码自动补充,然后代码补充,代码自动判断逻辑(人工智能),经过确定后merge

4.6K30

JS 中 this 在各个场景下指向

2.函数调用 一个表达式为函数接着一个(,一些用逗号分隔参数以及一个函数调用被执行,例如parseInt('18')。...它执行结果是一个name属性为'France'对象。 如果这个构造函数调用时不需要参数,那么括号可以省略:new Country。...使用函数调用来创建对象存在一个潜在问题(不包括工厂模式),因为一些构造函数可能忽略在缺少new关键字初始化对象逻辑。...绑定函数this 在调用绑定函数,this是.bind()一个参数。 .bind()作用是创建一个函数,调用该函数,将上下文作为传递给.bind()一个参数。...箭头函数只有一条语句,甚至可以省略return关键字。 箭头函数是匿名,这意味着name属性是一个空字符串''。

4.4K10

前端老项目接入 eslint 从配置到上线一些思考

bracketSameLine: false, // 箭头函数只有一个参数时候,也需要括号 arrowParens: 'always', // 每个文件格式化范围是文件全部内容...// 保存自动格式化 } 这个文件是 VSCode 针对当前工程配置,配置后保存文件时候插件自动帮助我们格式化,同时有实时错误提示。...但这里可能存在两个问题需要注意: 如果本地合并 master 时候产生了冲突,然后解决冲突新提交一个 commit 。...缺点:由于改动文件数较多,eslint 不可完全信任,贸然上线可能造成线上问题。 仅仅上线 eslint 的卡控和保存自动 lint 配置: 优点:未改动代码逻辑,不会存在引发线上问题隐患。...缺点:开发者修改、保存老文件后,自动触发 lint 修复,从而污染混淆本身修改,增加后续 code review 工作负担。

1.3K20

【译】《Understanding ECMAScript6》- 第二章-函数

逻辑或操作符||在第一个操作数为非正值返回第二个操作数。JavaScript函数定义参数如果不被传入就是设置为undefined,逻辑或操作符在处理参数个数补丁场景中应用很普遍。...使用new操作符,被调用函数内部this指向一个新对象并且最后这个新对象作为运行结果被返回。...而使用new操作符调用Person()意图很明显是为了创建一个新对象。函数双重角色问题一直困惑着开发者们,从而推进了ES6针对这个问题改动。...使用new调用函数,方法[[Construct]]被执行,它负责创建一个新对象,或者称为新目标,然后将this指向新对象后再执行函数内部代码。...value; }; 如果箭头函数只有一个参数,可以直接使用这个参数而不需要额外语法。

1.3K70

【前端财富】前端工程师装机指南 (windows10)

---- 电脑装机 记录下本菜鸟作为一个初级前端,拿到一个新电脑时候 windows terminal terminal 是我个人比较喜欢命令行工具,默认可以启动 cmd, powershell...谷歌浏览器 新电脑自带一个 edge,虽说也是和谷歌一样内核,但我更习惯用谷歌 安装后进行下列操作 设置浏览器显示最小字体,防止开发移动端小字体显示出问题 把浏览器首页设置为 流莺起始页 安装插件..."editor.formatOnType": true, // 编辑器失去焦点,将自动保存未保存编辑器。...": true, // (x) => {} 箭头函数参数只有一个是否要有小括号。..."javascript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions": false, // 定义函数参数括号空格处理方式

1.5K20

前端老项目接入 eslint 从配置到上线一些思考

bracketSameLine: false, // 箭头函数只有一个参数时候,也需要括号 arrowParens: 'always', // 每个文件格式化范围是文件全部内容...// 保存自动格式化 } 这个文件是 VSCode 针对当前工程配置,配置后保存文件时候插件自动帮助我们格式化,同时有实时错误提示。...但这里可能存在两个问题需要注意: 如果本地合并 master 时候产生了冲突,然后解决冲突新提交一个 commit 。...缺点:由于改动文件数较多,eslint 不可完全信任,贸然上线可能造成线上问题。 仅仅上线 eslint 的卡控和保存自动 lint 配置: 优点:未改动代码逻辑,不会存在引发线上问题隐患。...缺点:开发者修改、保存老文件后,自动触发 lint 修复,从而污染混淆本身修改,增加后续 code review 工作负担。

1.1K20

Web前端学习 第3章 JavaScript基础教程12 函数进阶

一、概述 在此前内容中,我们已经学习了函数基本用法,例如如何定义函数如何调用函数,以及函数形参、实参、返回值等内容。本节内容继续讲解ES2015为函数赋予新特性。...("hello world"); 3 })() 函数体被一个括号包裹起来,然后后面紧跟着一个括号,这样函数被声明之后,就立刻被调用。...我们来看一个示例来演示这个特性 四、函数默认值 在ES2015版本之前,我们可以通过下面的方法设置函数参数默认值 代码如下所示: 1 function fun1(x,y){ 2 x = x |...箭头函数简写 以上展示了一个完整箭头函数语法,这其实还不能体现箭头函数优势。 箭头函数一个优势是,简写箭头函数可以让代码更简洁 如果函数只有一个形参,那么可以省略参数外面的括号。...但是这样写法看起来有给我们增加了一些复杂度,我们可以用箭头函数解决这个问题, 1 const person = { 2 firstName: "lee", 3 sing: function

28720

非常好用 VS Code 插件推荐

vscode 插件 Rainbow Brackets 编码过程中,尤其在我们使用js进行函数式编程,代码里会有很多括号,想要保证它们对称十分困难,所以就出现了上面小粉同学尴尬局面,相信很多人都遇到过类似的情况...ESlint ESlint可以在我们在coding时候,分析我们代码,对有错误或不符合规范地方,给出提示,让我们第一间发现代码问题。同时,还能在保存,帮助我们自动修复一些问题。 ?...Document This 可以帮我们快速生成代码注释,比如一些函数注释,能够自动抽取出参数定义。...---- ---- 如何分享插件 分享插件,除了将插件名字告诉你小伙伴,当然还有其他办法了! 可以在项目的 .vscode 目录下创建文件 extensions.json。...然后给 recommendations 提供一个想要分享给同伴插件 ID 数组,这样他们打开项目,并且没有安装某些插件,VS Code就会提示安装了,并且可以一键全部安装。 ?

1.4K20

前端面试比较好回答

如何解决问题描述: 两个块级元素上外边距和下外边距可能会合并(折叠)为一个外边距,其大小会取其中外边距值大那个,这种行为就是外边距折叠。...(1)箭头函数比普通函数更加简洁如果没有参数,就直接写一个括号即可如果只有一个参数,可以省去参数括号如果有多个参数,用逗号分割如果函数返回值只有一句,可以省略大括号如果函数体不需要返回值,且只有一句话...执行效果依赖 next 方法调用参数。介绍了路由守卫及用法,在项目中路由守卫起到作用等等箭头函数和普通函数有啥区别?箭头函数构造函数吗?...] 方法,创建一个实例对象,然后再执行这个函数体,将函数 this 绑定在这个实例对象上当直接调用时,执行 [Call] 方法,直接执行函数箭头函数没有 [Construct] 方法,不能被用作构造函数调用...属性都会被赋予一个非空值,我们可以把这个属性当作一个备用仓库试图引用对象属性时会出发get操作,第一步检查对象本身是否有这个属性,如果有就使用它,没有就去原型中查找。

1K30
领券