- ECMAScript的变量是松散型的变量
var info='hi',age=17,found=false;
像这样的fuzhi赋值或者定义变量是允许的。
- 数据类型:主要包括Undefined, Null, Boolean, Number和String。另外一个复杂的数据类型为object。
- typeof操作符用于检测该变量是何种数据类型,返回值为string。一般来说,undefined--未定义,boolean--布尔类型,string--字符串,number--数值,object--对象或者null,function--函数。
- 声明变量但是没有初始化,则该变量的默认类型为undefined。
- null相当于空指针,初始化一个变量,并打算之后再用,那么使用null空指针。
-
if(null==undefined){ alert(true); }//true
Boolean类型具有两个字面值:true 和false;
- 数值包括:整数和浮点数。
-
var num=10;//10 var octnum=070;//in decimal scale is 56 var hexnum=0xA;//in decimal scale is 10 var floatnum=3.14159;//float number var floatnum2=3.125e7;//31250000
NaN(not a number):不会影响其他代码的运行,只会抛出一个NaN结果,并且NaN与任何值都不想等。
- 数值转换函数:Number(), parseInt(),parseFloat(),其中parseInt()用的比较多。
var a=parseInt('123456blue');//123456 var b=parseInt(' ');//NaN var c=parseInt('0000111');//111 var d=parseInt('0xA');//10 var e=parseInt('070');//70 var f=parseInt('22.562');//22
- String类型的数据可用单引号或双引号表示。转换成字符串则使用toString()方法
- object类型为对象,创建方式类似于java。对象具有构造函数:Object()。检查某属性是否存在对象中:object.hasOwnProperty(attr),返回值为布尔类型。获得布尔对象的原始值:valueOf()。对象的属性是否可以枚举,使用propertyisEnumerable(attr)。传入对象是否是另一个对象原型,采用object_A.isPrototypeOf(object_B)。
-
var obj=new Object();
JS的一元操作符、逻辑操作符基本沿用了C++、Java的操作符语法和系统,这里不做赘述。
- 循环语句中,除了 while\for\do-while\if\switch\break\continue 语句与c和java一样以外,还有for-in语句。
for-in 语句是一种精准的迭代语句:
var arr=new Array(); arr=[1,2,3,4,5]; for(var i in arr){ document.write(arr[i]+' '); }
- JS的函数定义:不需要声明返回值,一旦运行到return语句,后面的语句则不再运行。
-
1 var lim=10; 2 function add(key){ 3 var sum=0; 4 for(var i=0;i<key;i++){ 5 sum+=i; 6 } 7 return sum; 8 alert('I am missing') 9 } 10 var result=add(lim);//45
注意,JS的函数没有重载!!!!!!!
浙公网安备 33010602011771号