[0]5种数据类型: [0.1.1]基本类型值是指简单的数据段,5种基本类型是按值访问的,因为可以操作保存在变量中的实际值 [1.3]对于尚未声明过的变量,只能执行一项操作,就是使用typeof操作符检测其数据类型【但在严格模式下会导致错误】 Number(undefined):NaN Number(null):0 [3.2]出现场景: String(true):'true' || String(false):'false' Boolean(undefined):false Boolean(非空对象包括空数组[]和空对象{}):true Boolean(非空包括空格字符串):true || Boolean(''):false [4]Number [4.3.3.1]如果超出正数范围,输出Infinity(正无穷大),超出负数范围,输出-Infinity(负无穷大) [4.3.3.4]Number.MIN_VALUE - 1 != -Infinity,也是同样的原因,所以结果为-1 [4.3.4]NaN [4.3.4.2]任何涉及NaN的操作都会返回NaN [4.4]数值转换:Number()可用于任何类型,parseInt()和parseFloat专门用于把字符串转换成数值 [注意2]Number()、parseInt()、parseFloat()中数字为1.2. 会报错,但字符串为'1.2.'则不会报错 Number(各种进制的数字):运算后的十进制的数字,如1.0或1.或01会以1输出 Number(null):0 Number(对象): [4.4.2]parseInt():在转换字符串时,会忽略字符串前面的空格,直到找到第一个非空格字符。如果第一个字符不是数字字符或者负号,parseInt()就会返回NaN。如果是,则继续解析,直到解析完成或者遇到非数字字符。 [4.4.2.2]parseInt()函数提供第二个参数,表示多少进制,如:parseInt('123',16或10或2) [4.4.2.4]因为parseInt()是专门用来处理字符串转换数字的,所以parseInt(其他类型包括'')//NaN [4.4.3.1]parseFloat()只能解析十进制字符串 [5]String:由单引号或双引号括起来的字符序列,任何字符串的长度都可以通过访问length属性获得 unnnn 以十六进制nnnn表示一个Unicode字符(n为0-f),如u03a3表示希腊字符ε [5.3]字符串连接需要先创建一个新字符串,然后在新字符串中填充两个需要拼接的字符串,最后再销毁原来的字符串。这个过程在后台发生,也是在某些旧版本浏览器(IE6)拼接字符串速度慢的原因,但后来已经解决了这个低效率问题 Number使用该方法可以传递基数2、8、10、16,如var num = 10;num.toString(2);//1010 最后给大家一个简单的例子说明下这五种基本类型的不同var testString = "Hello"; var testBoobean = true; var testUndefined = undefined; var testUndefined1; var testNull = null; var testObject = {a:1}; var testFunction = function(){return;}; alert(testString);//"string" alert(testBoobean);//"boolean" alert(testUndefined);//"undefined" alert(testUndefined1);//"undefined" alert(testUndefined2);//"undefined" alert(testNull);//"object" alert(testObject);//"object" alert(testFunction);//"function"
零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。