您的位置:首页 > Web前端

一名前端工程师的自学之路!Js篇(11-27更新)

2017-11-27 17:00 281 查看


这里就写的简单一些吧,就当是报复你们看了不点赞不关注了,哈哈哈。接着上篇的文章~

对了,我这还有pdf版的红宝书,如果有需要的小伙伴,请联系我。



1、ES5中新增的数组操作方法

indexOf() 检索某个元素是否包含在数组中,如果该元素在数组中存在,返回该元素的位置(下标),否则返回 -1;

用法:

数组对象.indexOf(参数)

forEach() 数组的遍历,循环输出数组的···

用法: 

数组对象.forEach(function(item,index,array){

item 表示数组中的每一个元素

index 表示数组中的每一项的下标

array 表示该数组

})

map() 映射 循环数组---操作数组---返回数组(操作数组的每一项并返回新的数组)

用法:

数组对象.map(function(item,index,array){

return value;

})

filter() 过滤 根据给定的条件返回一个新数组

用法:

数组对象.filter(function(item){

return item > 7;

})

some() 返回一个布尔值 , 如果数组中有满足条件的数据,就不在向后执行,直接返回true,否则返回false

用法:

数组对象.some(function(item){

return item == "xm"

})

every() 返回一个布尔值 , 如果数组中所有的数据都满足条件,返回true,否则返回false

用法:

数组对象.every(function(item){

return item > 20;

})

2、内置对象

内置对象包括:Array String Math Date regExp正则

3、字符串对象

字符串(字面量) :通过单引号或双引号括起来的字符

定义:

var str = "helloworld";

var str = new String("helloworld");

通过str.length获取字符串长度

4、字符串的操作

charAt()

用法:

str.charAt(index) / str[index] 返回指定位置的字符

charCodeAt()

用法:

str.charCodeAt(index) 返回指定位置的编码

fromCharAt()

用法:

String.fromCharCode(unicode编码) 根据提供的unicode编码(AscII码)得到对应的字符

substr()

用法:

str.substr(start,length) 截取从指定位置开始,到指定长度的字符

substring()

用法:

str.substring(start,end) 截取从指定位置开始,到结束位置处的字符,但结果不包括结束处的字符

indexOf()

用法: 

"hello".indexOf("l") --- 2

str.indexOf(字符) 检索某个字符在字符串首次出现的位置,如果找不到返回-1

lastIndexOf()

用法:

str.lastIndexOf() 检索某个字符在字符串最后一次出现的位置,如果找不到返回 -1

split() 将一个字符串转成数组 (根据给定的字符将一个字符串切割成数组)

用法: 类比于数组中的 join(字符)

str.split(字符)

replace() 通过一个新字符串将原字符串替换 (默认替换一个),返回替换后的字符串

用法:

str.replace(原字符串,新字符串)

trim() 去掉字符串两边的空字符

用法:

 str = " hello world "; str.trim() = "hello world"

toLowerCase() 字符串大写转小写

toUpperCase() 字符串小写转大写

5、数学对象Math

Math.pow(m,n) 计算m 的 n次幂
Math.sqrt(m) 计算开平方
Math.abs(m) 计算绝对值
Math.floor(m) 向下取整(获取小于m的最大整数) Math.floor(1.6) -- 1 Math.floor(-1.6) ---- -2
Math.ceil(m) 向上取整(获取大于m的最小整数) Math.ceil(2.1) -- 3 Math.ceil(-2.1) --- -2
Math.round(m) 四舍五入
Math.max(多个参数) 找最大值
Math.min(多个参数) 找最小值
Math.random() 获取 0--1 之间的随机数 [0,1)
Math.random()*10 [0,10)

6、获取任意区间值的公式

Math.floor( Math.random()*(max-min+1)+min ) max 代表大数 min 代表小数

7、封装一个函数  功能获取任意区间值

function getRand(min,max){

return Math.floor( Math.random()*(max-min+1) + min );

}

8、获取随机颜色值

function getColor(){

var r = getRand(0,255).toString(16);

var g = getRand(0,255).toString(16);

var b = getRand(0,255).toString(16);

return (r.length<2?"0"+r:r) + (g.length<2?"0"+g:g) + (b.length<2?"0"+b:b) ;

}

9、定义日期时间对象

一、定义系统时间

var d = new Date();

二、定义自己的时间格式

var d = new Date("2017-03-05");如果没有时分秒 默认 早上08:00:00

10、获取年月日时分秒

getFullYear() 年
getMonth() 月 实际月份: getMonth() + 1
getDate() 日
getDay() 获取星期几 星期1--星期六(1--6) 星期日:0
getHours() 小时
getMinutes() 分
getSeconds() 秒
toLocaleString() 将中国标准时间 转成 本地时间格式 ,转换后为一个字符串

11、将日期格式对象转成字符串

function dateToString(d,sign){

var sign = sign || "-";//如果sign有值,按照传递的值,否则默认为 -

var h = d.getHours()<10?"0"+d.getHours():d.getHours();

var m = d.getMinutes()<10?"0"+d.getMinutes():d.getMinutes();

var s = d.getSeconds()<10?"0"+d.getSeconds():d.getSeconds();

return d.getFullYear() + sign +(d.getMonth()+1)+sign +d.getDate() + " " +h + ":" + m + ":" + s;

}

12、将一个日期格式的字符串转成日期对象

一、通过构造函数的new Date()方式

var str = "2017-09-09";

var d = new Date(str); 将字符串转成日期时间格式对象

二、先通过 Date.parse() 获取 时间的毫秒值,然后在 通过 new Date() 转换

var str = "2017-09-09";

Date.parse(str); 获取的是从 1970年1月1日 零点 到该时间的毫秒值

function stringToDate(str){

return new Date(str);

}

13、获取日期时间的毫秒值

通过 getTime() 方法 获取当前时间距离 1970年1月1日 午夜的毫秒值

用法: 日期对象.getTime()

例如:

new Date().getTime() 获取当前系统时间距离1970年午夜的毫秒值

new Date("2017-06-01").getTime() 获取 2017年 06 月 1日 距离1970年1月1日的毫秒值

14、获取时间差

假设 你们点赞时间是 2017年12 月 31 日,计算 距离点赞时间 还有多少天?哈哈哈

设置时间差的函数,返回秒数

function diff(start,end){

return Math.abs( ( start.getTime()-end.getTime() ) / 1000 );

}

15、设置时间

设置10天后的时间:

方式一、 setTime()

要设置的时间对象.setTime( 几天后的毫秒值 )

var d = new Date();

d.setTime( d.getTime()+10*3600*24*1000 );

alert( d );

方式二、setDate()

var d = new Date();

d.setDate( d.getDate()
a89b
+ 10 );

alert( d );

16、定时器

setInterval(要执行的任务,间隔时间) 间隔时间默认为毫秒

setInterval(function(){ ... },1000)

最后推广一下自己的小程序,如果你也喜欢锻炼的话在这里寻找你的小伙伴吧。

自律更自由,一只喜欢锻炼的程序猿,嘿嘿。

你都看到这了,不点个关注就过分了哈~

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息