javascript12个你必须掌握的技能

网站建设的时候,作为码农,总喜欢写一些高效且省事的代码,这里,dbestech为你提供关于JavaScript的使用技巧点。

1. 空(null, undefined)验证

当我们创建了一个新的变量,我们通常会去验证该变量的值是否为空(null)或则未定义(undefined)。这对于JavaScript编程来说,是一个经常要考虑到的验证。

如果直接写,那么像下面这样:

if (variable1 !== null || variable1 !== undefined || variable1 !== ‘‘) { let variable2 = variable1; }

我们可以使用一个更加简洁的版本:

let variable2 = variable1  || ‘‘;

如果你不信,在谷歌浏览器开发者面板的控制台下试试!

//值为null的例子let variable1 = null;let variable2 = variable1  || ‘‘;console.log(variable2);//输出: ‘‘ //值为undefined的例子let variable1 = undefined;let variable2 = variable1  || ‘‘;console.log(variable2);//输出: ‘‘ //正常情况let variable1 = ‘hi there‘;let variable2 = variable1  || ‘‘;console.log(variable2);//输出: ‘hi there‘

2. 数组

这个好像比较简单!
非优化代码:

let a = new Array(); a[0] = "myString1"; a[1] = "myString2"; a[2] = "myString3";

优化代码:

let a = ["myString1", "myString2", "myString3"];

3. if true .. else 的优化

let big;if (x > 10) {big = true;}else {big = false;}

简化后:

let big = x > 10 ? true : false;

极大简化了代码量!

let big = (x > 10);let x = 3,big = (x > 10) ? "greater 10" : (x < 5) ? "less 5" : "between 5 and 10";console.log(big); //"less 5"let x = 20,big = {true: x>10, false : x< =10};console.log(big); //"Object {true=true, false=false}"

4. 变量声明

尽管JavaScript会自动将变量上提(hoist),使用该方法可以将所有的变量都在函数的头部用一行搞定。

优化前:

let x;let y;let z = 3;

优化后:

let x, y, z=3;

5. 赋值语句的简化

简化前:

x=x+1;minusCount = minusCount - 1;y=y*10;

简化后:

x++;minusCount --;y*=10;

假设 x=10y=5,那么基本的算术操作可以使用如下的简写方式:

x += y // x=15x -= y // x=5x *= y // x=50x /= y // x=2x %= y // x=0

6. 避免使用RegExp对象

简化前:

var re = new RegExp("\d+(.)+\d+","igm"),result = re.exec("padding 01234 text text 56789 padding");console.log(result); //"01234 text text 56789"

简化后:

var result = /d+(.)+d+/igm.exec("padding 01234 text text 56789 padding");console.log(result); //"01234 text text 56789"

7. If 条件优化

虽然很简单,但还是值得提一下。

简化前:

if (likeJavaScript === true)

简化后:

if (likeJavaScript)

我们再来句一个判断非真的例子:

let c;if ( c!= true ) {// do something...}

简化后:

let c;if ( !c ) {// do something...}

9. 函数参数优化

我个人倾向于使用获取对象元素的方式来访问函数参数,当然这个见仁见智啦!

通常使用的版本:

function myFunction( myString, myNumber, myObject, myArray, myBoolean ) {// do something...}myFunction( "String", 1, [], {}, true );

我喜欢的版本:

function myFunction() {/* 注释部分console.log( arguments.length ); // 返回 5for ( i = 0; i < arguments.length; i++ ) {console.log( typeof arguments[i] ); // 返回 string, number, object, object, boolean}*/}myFunction( "String", 1, [], {}, true );

译者注:原文下方有评论表示不建议用楼主的方法,使用第一种方法函数参数的顺序是可以变动的,第二种你就要小心了。

10. charAt()的替代品

简化前:

"myString".charAt(0);

简化后:

"myString"[0]; // 返回 ‘m‘

译者注:我相信用第一种方法的人已经不多了吧!

11. 函数调用还可以更短

简化前:

function x() {console.log(‘x‘)};function y() {console.log(‘y‘)};let z = 3;if (z == 3){x();} else {y();}

简化后:

function x() {console.log(‘x‘)};function y() {console.log(‘y‘)};let z = 3;(z==3?x:y)();

你说四不四很短?

12. 如何优雅的表示大数字

在JavaScript中,有一个简写数字的方法,也许你忽略了。1e7表示10000000。

简化前:

for (let i = 0; i < 10000; i++) {

简化后:

for (let i = 0; i < 1e7; i++) {
时间: 2024-12-09 10:08:46

javascript12个你必须掌握的技能的相关文章

全栈工程师技能图谱

知己知彼,方寸不乱. 1 前端技能图谱 基础 HTML / CSS JavaScript DOM 中级篇 数据格式(如JSON.XML) RESTful API交互(如jQuery Ajax,Fetch API,ReactiveX) 正则表达式 HTML语义化 命令行 Node.js DIV / CSS SCSS / SASS 矢量图形 / 矢量图形动画(如SVG) 单页面应用 高级篇 ES6 / TypeScript CSS3 面向对象编程 函数式编程 MVC / MVVM / MV * 安全

2017-7-27-关键20小时,快速习得任何技能

2017-7-27-关键20小时,快速习得任何技能 thinking 总之,就是在有限时间内保持专注,和不断练习 [email protected] 2017-7-27

web前端工程师应该会的9个软技能

做为一名web前端工程师(http://www.maiziedu.com/course/web-px/),往往我们可能只专注于修炼自己的内功,而忽视了软技能.硬技能决定你是否能得到工作,而软技能能够表明你是否适合这份工作和适应工作环境等.所有的公司都有属于自己的文化,并努力将这些文化传承下去,所以他们必须确保每一位新员工能够适应这个环境. 许多硬技能很容易获得并可很快的提高,而软技能由于和你性格等联系紧密,可想要改变他们是一件很困难和缓慢的事情.这里有七个核心的软技能,适用于大多数的企业,它们不

秀技能:倒立及其他没用的

我练的倒立得靠墙,做不到像猴子或杂技演员一样走来走去,或者静止在那里. 靠墙倒立,就是像<流星花园>里花泽类里那样,面对墙壁,双手撑地,然后啪地一声,脚就上墙了.花泽类说,我听朋友说,如果你要哭的时候倒立过来,眼睛就不会流下来了.后面这段对白并非靠墙倒立的一部分. 其实我根本不相信花泽类说的,泪腺分泌如果连地心引力都不能克服,人类早就因为眼睛迷沙子然后感染死绝了.另外,我想不起来<流星花园>里是否给了全身的镜头,别腿上还有绳子向上拉吧. 靠墙倒立基本是个没用的技能,练这个,多一半是

Android开发工程师,新长征路上的14项技能

导读: 你曾渴望回到宋朝吗? 或者什么朝,反正就是男耕女织的古代. 哦,那时的首都在汴梁(开封),房价想必没有这么高,工作?无非就是给你把锄头,去,种地去.夕阳西下了,麦子垛后,你和翠姑搂抱在一起,那时的你,生活的简单而美好. 看看现在的你,一个刚入门的安卓开发工程师,没有信用卡,没有她,没有24小时热水的家.你想念你的锄头和翠姑(或麦垛),可你回不去了,你现在手中的安卓手机,冰冷如铁,你不知道如何在这4寸屏的小东西上打出一片天地. 你不用感到不知所措和困惑,技术就是你安身立命的根本,当下,你的

财务必备技能 如何将pdf转换成excel

虽然pdf文件有各种的优点,但是编辑权限也是事实,将pdf转换成其他格式文件是不可避免的,之前小编给大家讲解过很多使用迅捷pdf转换器将pdf转换成word或是word转换成pdf的方法.今天就不局限于pdf和word的转换了,这里给大家一个新的转换形式,那就是pdf表格文件转换成excel,这可是财务必备技能之一,不会这种转换怎么看怎么亏. 如何将pdf转换成excel,pdf转excel操作步骤详解: 1.在迅捷pdf转换器的界面当中选择"文件转excel",之前我们在很多的文章中

Photoshop技能167个经典的Photoshop技巧大全

Photoshop技能167个经典的Photoshop技巧大全 学PS基础:Photoshop 技能167个­ 经典的Photoshop技巧大全,如果你是初级阶段的水平,熟读此文并掌握,马上进阶为中级水平.绝对不是广告噢. ­ 1. 快速打开文件­ 双击Photoshop的背景空白处(默认为灰色显示区域)即可打开选择文件的浏览窗口.­ 2. 随意更换画布颜色­ 选择油漆桶工具并按住Shift点击画布边缘,即可设置画布底色为当前选择的前景色.如果要还原到默认的颜色,设置前景色为25%灰度 (R19

PHP初学者必须掌握的6个技能

初学PHP时,不要好高骛远,脚踏实地的把LNMP搞熟练,打好基础再往更高的层次发展.今天给大家总结初学者应该学会的技能. 1.Linux 基本命令.操作.启动.基本服务配置(包括rpm安装文件,各种服务配置等):会写简单的shell脚本和awk/sed脚本命令等. 2.Nginx 做到能够安装配置nginx+php,知道基本的nginx核心配置选项,知道server/fastcgi_pass/access_log等基础配置,目标是能够让nginx+php_fpm顺利工作. 3.MySQL 会 自

【技能】使用纯CSS+html写出方向箭头,简单大方,好看

使用纯CSS+html写出方向箭头,贴出来就可以用,100%原创 <html> <head> <title></title> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <style type="text/css"> .pointsRule{ display: inline-blo