js字符串和数组
sustr substring slice的联系与区别
str.substr(2,5) //从索引2开始截取5个字符,原有字符串str不变 str.substring(2,5) //从索引2开始截取到索引5(不包含索引5),原有字符串str不变 str.slice(2,5) //从索引2开始截取到索引5(不包含索引5),原有字符串str不变 //substr substring slice三种方式截取字符串后,原有字符串都不变 //slice和substring中参数为负数时,slice会从(字符串总长加上负数)开始截取,substring会忽略负数,从0开始
数组的常用方法
shift()//删除数组中第一个元素 unshift()//向数组的开头添加 pop()//删除数组最后一个元素 push()//向数组末尾添加元素 concat()//拼接数组 splice(n,m)//从数组中截取索引n开始截取m个元素,原有数组改变 slice(n,m)//从数组中截取索引n-m之间的数组,原有数组不变
Math.pow(x,y) //x的y次幂(方)
一、常用方法单词:
js中表示浏览器对象:window js中表示文档对象: document 把"12px"前面的12提出来的那个函数: parseInt() 把"12.5px"前面的12.5提出来的那个函数是:parseFloat()
数学方法
把带小数的数往上取Math.ceil
把带小数的数往下取 Math.floor
四舍五入Math.round
随机数Math.random
DOM属性和方法
父节点 parentNode
子节点集合children
上一个节点 previousSibling
下一个节点 nextSibling
添加子节点createEvent
在一个元素之前添加的DOM方法insertBefore
复制节点 colonedNode
删除节点 removeChild
数组:
在数组的前面追加新项 unshift 删除数组的最后一项 pop 在数组的中间添加一项的方法 splice(n,0,m) 把一个字符串劈成数组 split 把一个数组连成字符串 tostring 把第n到第m项提出来,但不影响原来的数组 slice(n,m) 把第n到第m项截取出来,生成一个新数组 splice(n,m) 把多个数组连在一起 concat 复制数组(什么叫复制数组,就是生成一个和原来数组一模一样的数组) concat() slice(0) splice(0)
思考题:
1、document.parentNode的值是什么,为什么。null 2、document.parentnode的值是什么,为什么。 undefined 3、prototype是谁的属性,它起什么作用?__proto__是谁的属性,它有什么作用?prototype和__proto__有什么联系? prototype是函数数据类型的属性,这个属性是一个对象数据类型,里面存储的是在原型链上定义的所有的属性。 __proto__是对象数据类型的属性。 4、hasOwnProperty和in都是用来判断对象的属性的,这两个是怎么用的,有什么区别? hasOwnProperty检测某一个属性是否是这个实例对象的私有属性,如果私有中有(不管公有是否有),返回true,反之没有就返回false in 也是检查某一个属性是否属于我们的对象,这个既可以检查私有,也可以检查公有(不管是公有属性,还是私有属性),只要存在就返回true 5、什么是闭包,它有什么作用? 当函数执行的时候,把原有存储的代码字符串拿出来,变成真正的js代码,然后从上到下执行,并形成一个新的代码运行环境(作用域 ),在自己的作用域中定义的变量不受外界的干扰(自己家里的变量和函数外面的没有关系),我们把这种机制叫做闭包。 作用是让作用域中的变量不受外界影响 6、你理解的DOM是用来干什么的?(DOM的意义和用途) DOM是文档对象模型 document object model DOM中提供了很多获取元素的方法、获取元素之间关系的属性,获取元素本身本身特性的方法(DOM盒子模型)、以及对这些元素的相关操作。