前端之js易混淆点

来源:互联网 发布:安卓软件优化网站 编辑:程序博客网 时间:2024/06/07 06:02

1.substring(x,y)

可以有一个参数也可以有两个参数 substring() 方法返回的子串包括 start 处的字符,但不包括 stop 处的字符    类似于这个区间 [x,y)**注意:**x>y会自动调换位置

2.Substr(x,y)

可以有一个参数也可以有两个参数  substr() 的参数指定的是子串的开始位置和长度**注意:**可以接受负的参数  当y为负值时,则为空

3.slice(x,y)

substring类似,都是返回一个 [x,y)区间的字符串 **注意:** 和substring不同,当x>y的情况发生,则会产生一个空,而不会自动调换位置和Substr类似的一点是  y可以为负值,输出的的是y+length之后的长度

4.this

一般默认情况下this指针指向window,this会指向定义时所在的对象,this是会随着当前调用者的改变而改变,例如在定时器中this指向window,如果想this只向当前对象即需提前绑定住this,以便后面使用,在面向对象(oop)的设计模式中很常见,但是在ES6中this则不存在该问题,箭头函数内的 this 执行定义时所在的对象。

5.转换

5.1.数组转换成字符串:var array1=(["b", 2, "a", 4,]);var str=array1.join();str此时就是字符串;   字符串转换成数组:var str=‘b2a4’;var array1=str.split(",");5.2.对象转换成字符串:var object1={x:6,y:6};var array1=JSON.stringify(object1);这时候输出 '{"x":6,"y":6}';   字符转转换成对象:var array1='{"x":6,"y":6}';var object1=JSON.parse(array1)或者var object1=jQuery.parseJSON(array1);这时候输出{x:6,y:6};**后者jquery3以后不推荐使用**

ps:ie7和ie6环境下,字符串转换成JSON对象:var c=’{“name”:”Mike”,”sex”:”女”,”age”:”29”}’; var obj=eval(“(“+c+”)”);

6.alt title区别

alt是在图片无法显示时候对无法显示的对象起描述作用;图片显示时不表现;title,是图片的标题主题,只要img标签存在,不管是否显示图片,鼠标停滞在此处时都会浮现;

7.load与ready的区别

1.load是当页面所有资源全部加载完成后(包括DOM文档树,css文件,js文件,图片资源等),执行一个函数,如果图片资源较多,加载时间较长,onload后等待执行的函数需要等待较长时间,所以一些效果可能受到影响2.$(document).ready()是当DOM文档树加载完成后执行一个函数 (不包含图片,css等)所以会比load较快执行在原生的jS中不包括ready()这个方法,只有load方法就是onload事件

(未完待续。。。)

0 0