前端开发常见问题精选(五)

前端开发常见问题精选(五)_第1张图片

一、IntelliJ IDEA编辑器如何打开电脑终端?

当我们运行node环境或者使用webpack时,首先需要打开电脑终端,这时通常我们会直接使用Win+R然后输入cmd打开,但这样往往不是很方便。而目前大多数IDE都集成了该功能,这大大提升了开发效率。

我们先来了解一下Console与Terminal的区别:

Console是控制台,可以用于打印代码运行结果
Terminal是电脑终端,可以用它来运行node环境

那么我们在IntelliJ IDEA中该如何打开Terminal呢?

第一步,选择插件:File->Settings->Plugins->Terminal,在Terminal右侧勾选上后点击ok即可;
第二步,重启IntelliJ IDEA;
第三步,打开Terminal:View->Tool Windows->Terminal,或者直接按下快捷键Alt+F12

二、如何将其他时区的时间转换为北京时间?

JS没有提供直接进行时区转换的方法,但是我们可以先将源时区转换为一个中间量,再将这个中间量转换为目标时区,而这个中间量就是世界标准时间(UTC)

JS提供了一系列用于转换为UTC的原生方法:

getUTCFullYear()
getUTCMonth()
getUTCDate()
getUTCHours()
getUTCMinutes()
getUTCSeconds()

它们的用法与Date对象获取时间的常用方法相同,例如要实现将其他时区时间转换为北京时间可以这样做:

var date = new Date();   // 获取本地时间
var y =  date.getUTCFullYear();    // 年
var m = date.getUTCMonth();    // 月
var d = date.getUTCDate();    // 日
var h= date.getUTCHours()+8;    // 时(北京时间)
var M = date.getUTCMinutes();    // 分
var s = date.getUTCSeconds();    // 秒
console.log(new Date(y,m,d,h,M,s));    // 打印北京时间

我们知道,每个时区与UTC的差别只是在小时上,而且都是固定不变的,北京时间是UTC+8,所以只需将本地时间的小时转换为UTC的小时之后再加8,而其他时间参数均保持UTC不变。

那么在国内要如何进行测试呢?

很简单,只需将设备时间改为其他时区时间就可以,运行代码后会发现打印出来的时间就是当前的北京时间。

三、iScroll.js在某些安卓手机webview中滑动很卡如何解决?

iScroll.js是一种常用的JS滚动插件,通常用于移动设备中局部区域的滚动,但是在实际工作中发现,某些安卓手机webview中使用iScroll.js滑动会很卡,只需在页面标签中加上下面这段JS代码即可。


具体原因未知,有大神了解望告知。

四、多行字符串连接除了使用“+”号来连接,还有其他更加简洁的书写方式吗?

我们常常会使用字符串拼接,尤其是在使用jQuery开发项目时,往往需要将后端接口获取到的数据通过字符串拼接的方式添加到页面中,或者我们在定义Vue组件时也需要使用字符串模板,而这些情况下为了让HTML结构看起来更加整齐通常会将字符串进行断行书写,但是如果直接断行的话会出现语法错误,所以这时我们会通过使用“+”号来进行连接,例如:

var str = '
' + '

想要学习更多前端知识,

' + '

欢迎关注微信公众号:前端微站。

' + '
';

但是,通过这种方式有个很明显的缺点就是太麻烦,尤其是在断行比较多的情况。

那么有没有既可以实现断行,书写又简单的方法呢?

答案当然是有的,我们可以直接在断行末尾加上“\”即可。例如:

var str = '
\

想要学习更多前端知识,

\

欢迎关注微信公众号:前端微站。

\
';

怎么样?是不是看起来简单又方便?

以上是我在工作当中所遇到的一些问题总结,在此与大家共勉!

你可能感兴趣的:(前端开发常见问题精选(五))