JS语法规则
简单罗列一下学习的到的知识点, 一来方便自己总结,二来以后可以查漏补缺, 三来没事就随便写写,语句不通顺, 还望见谅
变量
JS中的变量是松散类型的,何为松散类型, 就是说变量只是保存值的一个占位符而已,,可以存储任意的数据类型,变量是什么类型是不知道的,只有存储了值才知道是,这也是弱语言的优势也是劣势。
声明和赋值
变量的生命和赋值可以同时进行,也可以分开, 可以同时给多个变量生命和赋值. 生命变量的时候不可以省略var, 不然则是全局变量, 也不推荐这么生命全局变量
声明和赋值typeof
检测变量的类型可以使用typeof param或typeof(param),返回字符串,具体可以看下DEMO
typeofundefined
这个类型的数据只有一个值undefined, 无需显示定义变量为undefined类型,在声明了变量未赋值就是undefined类型
undefinednull
null表示的是一个空对象指针,这么说确实有点难以理解,不是说为空的嘛,什么都没有。而且如果这个变量保存的是对象的话,初始化的时候最好为null。undefined派生自null,所以就有了null==undefined
undefined和null相等number
number表示整数和浮点数,如果不是一个数字用NaN表示。什么情况下会得到一个NaN值呢,需要注意以下几个问题:
1.任何涉及NaN的操作都会返回NaN,比如:NaN+345, NaN/3
2.NaN和任何值都不相等,包括NaN本身,判断是否是NaN使用isNaN()函数
3.isNaN()函数如果是非数字会返回true,反之返回false, isNaN会尝试把参数转换为数字
NaN注意事项把其他数据类型转换为number类型,强制转换Number(),根据情况转换 parseint(),parefloat(),这里有3个函数,第一个函数是强制转换,一般不建议使用Nubmer(),强烈推荐parseint, parsefloat,具体用法如下:
转换为numbernumber()会把不能转换的也转换了,这也是为什么不建议使用number()的原因,你不知道结果是什么样子的。建议使用parseInt()和parseFloat()