javascript 特殊的一些知识

基础知识

1.注释/**/ 块注释,与正则表达式有冲突,不安全。

2.js数字类型只有一个,即为64位的浮动值

3.NaN是一个数值,他不能产生正常结果的运算结果。NaN不等于任何值,包括它自己。isNaN检测是否NaN

4.Js中所有的字符都是16位。

5.函数的声明和函数的定义:

//函数声明

console.log(f);
function f(x){
return x;
}

//函数定义
console.log(z);//undefined
var z = function(x){
return x;
};

区别:函数定义,只是变量声明提前,变量的初始化代码任然在原来的位置。函数声明:函数名称和函数体均提前,脚本中的所有函数和函数中所嵌套的函数都会在其他代码前声明。(变量提升,z是什么变量都将提升,这里只是为了说明函数声明和定义的区别)

数组

var a = [1,,,,5];//其他三个值为undefined   稀疏数组

var b = [1,2,3,4];

var c = [5,6];

1.concat()

b.concat(c);//[1,2,3,4,5,6]

2.join

c.join();//5,6

c.join("");//56

c.join("-");//5-6

3.reverse();倒序

4.splice() //删除和插入

  1)删除

       b.splice(1,2);//1为从第几个开始,2为删除几个

2)插入

b.splice(1,2,33,44,44,22);//1为从第几个开始,2为删除几个,2后面的数值都为插入的数值。

5.循环的一些,参数一样,功能有差异。返回值也不能。

1)every  返回值:boolean

b.every(function(v , i , arr){

      //v 自身的值,i索引,arr数组

});

2)foreach  ,map ,some ,filter

6.slice() 选择  slice(start,end)//包括start不包括end

事件:

addEventListener( a , b , c)//a为事件名例如click,b调用的函数,c为捕获处理程序

这个方法为一个对象注册同一事件类型的多个处理程序函数

var btn = document.getElementById('btn');
btn.addEventListener( 'click',
function(){
alert('a');
);
btn.addEventListener( 'click',
function(){
alert('b');}
);
btn.onclick=function(){alert('cc');};
btn.onclick=function(){alert('dd');};

//这里不执行alert("cc");

上一篇:javascript中各种继承方式的优缺点


下一篇:深入理解JavaScript中的继承