一.数据类型
1) 3种基本数据类型 数字 文本字符串 布尔值
2) 2种小数据类型 null undefined
3) 1种复合数据类型 对象(Object)
1.无序 ;
2.有序 数组
4) 具有可执行代码的特殊的对象 函数(function)
二.基本类型转换
字符串转数字
1.用于数字环境中;
2.Number( number1); ( 以10为基数进行转换)
3.parseInt( number1 ) , parseFloat(number1)
数字转字符串
1.String( number1 );
2.number1.toString( 转换基数)
指定小数点位置
1. n.toFixed( a) a:小数点后指定位数
2.n.toExponential( b ) b:小数点前保留一位数字,小数点后指定位数,用科学计数法表示
3.n.toPrecision( c ) c:指定有意义的位数,科学计数法表示
注:3种方法都会对结果进行适当的四舍五入
字符串使用
1. s.length 获取字符串长度
2. s.charAt( ) 获取特定下标的字符
3.s.substring( a,b) 获取特定下标内的字符 a:包括 b:不包括
4.s.indexOf('a') 检索 'a'字符,返回第一个'a'的位置
布尔值转换
1.false->0 false->"false" true->1 true->"true"(布尔值到数字和字符串)
2.0/NaN->false 其他->true (数字到布尔值)
3.空字符串->false 其他->true (字符串到布尔值)
注:转换方法:Bollean(" x") 或者 !!x
三.函数定义
1.function xx(x) { ... }
2.var xx=function(x){ ... }
3.var xx=new Function("x","..."); 不建议使用,语法笨拙且效率较低
四.对象
对象到基本类型转换
非空 布尔值环境:true
数字环境: valueOf() [ toString()->转数字 ]
字符串:toString()
不明确环境: valueOf->基本类型值->结束
valueOf->非基本类型值->toSting(); (Date 对象例外 + 转换为字符串)
五.基础类型和引用类型的
1.基础类型:布尔 数字 传值:两个独立的拷贝
2.引用类型:对象 传址:使用引用修改元素属性,函数内不可被别的引用覆盖
function add ( array , x ){
array[0]=array[0]+x;
array[1]=array[0]+x;
array[2]=array[0]+x;
}
function add ( array , x ){
var new_array=new Array(3);
new_array[0]=array[0]+x;
new_array[1]=array[0]+x;
new_array[2]=array[0]+x;
array=new_array; //no effect
}
注:字符串不可变,通过传值比较;
var s1="hello";
var s2="hell"+"o";
if(s1==s2) alert("hello!"); //success