javascript之基本概念
来源:互联网 发布:武侠大宗师java gm工具 编辑:程序博客网 时间:2024/05/22 17:40
基本数据类型有Null,Number,String,Boolean,Undefined,复杂的类型有Object。 可以用typeof检测数据类型,形式为typeof aaa或者typeof(aaa),typeof是一个操作符不是函数()不是必须的。
typeof返回六种数据,undefined未定义的值,boolean布尔值,string字符串,number数值,function函数,object对象或null,null被认为是一个空的对象的引用。
var m;//var a; alert(m)--->undefined,alert(a)--->出错。而typeof a----->undefined.
其他格式可以通过Boolean()来转化为Boolean值,如Boolean("abc")==true;String非空字符串为true,Number非0数值为true,0和NaN为false,Object任何对象为true,
null为false,Undefined n/a(not applicable)为true,undefined为false。还可以直接用if("abc")返回true。if中自动执行了Boolean()。
Number类型var a=55;十进制整数,还可以用八进制var a=070;十进制的56 ;var a = 079;无效解析为79;十六进制为0x,var a=0xA;为十进制的10;不管八进制还是十六进制都会转为十进制。浮点数0.1和.1是一样的,1.0和1.是一样的同样解析为1。10.0解析为10。精度为17为小数0.1+0.2不是0.3,而是0.30000000000000004。e表示10的阶乘,
3e-7==0.0000003。Number.MAX_VALUE为js的最大值,Number.MIN_VALUE为js的最小值。可用isFinite()判断是不是在最小值和最大值中间,是的话返回true。不是返回false。Infinity为正无穷,-Infinity为-无穷。NaN(not a number)为非数值的一个数值,NaN跟任何值都不相等,包括NaN.用isNaN()判断是不是数值或可以转换为数值。
isNaN(NaN)-->true,NaN不是数值,isNaN("10")-->false因为“10”可以转换为10;isNaN(true)-->false因为true可以转化为1.
数值转换,Number(),parseInt(),parseFloat().Number()可用于任何类型的转换,另外两个是把字符串转为数值。Number()把true和false转为1和0,null转为0,undefined转为NaN,字符串内容是数字(0x开头的十六进制数转为十进制)转为数字,空转为0,其他转为NaN。parseInt()转换是最好加上后面的数字代表什么进制,如parseInt("10",2)代表2进制的10,就是十进制的2.十六进制可以省略0x如parseInt("a",16)。parseInt("1234s")为1234,parseInt()就是从字符串第一个字符开始读,读到不是数字为止,空字符串或解析不了的为NaN。parseFloat()只解析十进制,只解析第一个小数点,解析不了为NaN。
toString()是把其他字转为字符串,null和undefined没有这个方法,但是可以用String()来转换,String(null)或String(undefined)。数值toString()可以再括号中加进制,如toString(2),toString(16)。
创建Object-->var a = new Object();不建议省略();Object的属性和方法:constructor用于保存创建当前对象的函数。hasOwnProperty(属性名):查看属性是否存在。isPrototypeOf(object)判断当前对象是不是存在object的原型链中。propertyIsEnumerable(属性名)判断属性是否能用for-in来枚举。toLocaleString(),toString(),valueOf()。
!非操作符,对象返回false,空字符串返回true,0返回true,非空字符串返回false,非0返回false,null返回true,NaN返回true,undefined返回true。
&&与操作符,只有两个都为true才是true,第一个为对象返回第二个操作数。第二个为对象当第一个为true是返回。两个都为对象返回后一个。有null返回null,有NaN返回NaN,有undefined返回undefined。如果第一个操作数决定了结果,就不用看第二个操作数了。
||或操作符,第一个为对象则返回第一个操作数,第一个为false返回第二个操作数,两个都为null返回null,两个都为undefined返回undefined两个都为NaN返回NaN。如果第一个为true,就不用看第二个数了。
*操作符,如果结果超出范围则为Infinity或-Infinity。操作数有NaN结果为NaN,Infinity乘0为NaN,如果有非数值的则调用Number()再判断。
/操作符,操作数有NaN结果为NaN,Infinity/Infinity为NaN,0/0为NaN,xxx/0为Infinity(正负根据xxx)。
%操作符,不好判断的都为NaN。
+操作符,操作数有NaN结果为NaN,Infinity+-Infinity为NaN。
-操作符,操作数有NaN结果为NaN,Infinity-Infinity或-Infinity--Infinity结果为NaN。
null==undefined返回true,null===undefined就是false;
for-in===for(var xxx in zzzz){.....}循环。
label:statement.一般跟break和continue一起。如for(){ for(){break; } }这里break只是跳出了里面的for循环,外面的还在执行,而dropOut:for(){ for(){break dropOut; } }这样就是直接跳到最外面了,不用执行for循环了。
with的用法:原来var ab = xxx.a,bc=xxx.b,cd=xxx.c用了with就是with(xxx){var ab=a,bc=b,cd=c}。
- JavaScript内核之基本概念
- javascript之基本概念
- JavaScript 基本概念之数据类型
- Javascript基本概念之数据类型
- JavaScript入门之基本概念篇
- javascript之基本概念讲解1
- JavaScript基本概念之简单语法
- JavaScript基本概念之变量与数据类型
- JavaScript 基本概念之操作符、语句、函数
- JavaScript思考之二:函数的基本概念
- javascript基本概念
- javascript基本概念
- javascript基本概念
- Javascript基本概念
- javascript基本概念
- JavaScript基本概念
- JavaScript基本概念
- JavaScript基本概念
- win7下php 5.6连接mongodb扩展
- Hibernate的10个常见面试问题及答案
- thinkphp3.2 cli模式的正确使用方法
- OpenSceneGraph实现的NeHe OpenGL教程 - 第四十四课
- POJ 2187 Beauty Contest(凸包)
- javascript之基本概念
- ES6 反单引号 字符串模板
- centos locate 命令安装
- wpf记忆(界面随鼠标移动)
- get请求中文乱码问题
- python元组(Tuple)、字典(Dictionary)详解
- 文章标题
- HDU 1045(二分图)
- 元素分类--块级元素