JavaScript语言基础

微笑、不失礼 提交于 2020-03-02 09:12:42

 

标示符:区分大小写,可以是_ $ 或字母开始不能是数字,中文命名变量也合法。

保留字:void break delete function return do case if switch var catch else in this  continue false instanceof throw while debugger finally new true const default for null try 等

变量:通过var来定义,没有则是全局变量和lua的local类似

注释:标准C语言的注释方法 /**/  or // 

数据类型:包括数值,字符串,对象类型,数组类型,布尔类型等等

    数值类型:包括十进制 八进制等,和C语言差不多。浮点数必须包含一个小数点或者一个E或e

    布尔类型:false true

    字符串:“123”  or ‘123’

 

对象类型:new 来创建一个对象

数组类型:Array是一个数组对象,var arr=new Array(10)    arr数组大小为10。由于是弱类型的脚本语言,数组也支持混合类型如

var arr= new Array(10);
arr[0]="123";
arr[1]=12;

 

字面常量:

12 整数, 1.2 浮点数, “hello” 字符串, true 布尔,{x:50,y:100} 对象,null 空对象(不存在任何对象),[1,2,3]数组对象

 

类型转换:

转换为字符串:toString函数。

转换为数字:parseFloat parseInt(arg,to)//to表示目标进制 等函数 注:会自动剔除非法字符然后返回

console.log(parseInt("123ab2",10));//输出10进制123
console.log(parseInt("0xB",10));//输出11,parseFloat不能用16进制转换

可用全局函数isNan(ARG)来检测是否是Nan

强制转换:

console.log(Boolean(0.0));// 每种数据类型的false 否转换为false 如整数的0,浮点的0.0,
//字符串的"" , 对象的null 等,其余都为true
console.log(Number("1211yey"));//返回Nan,非法数据都会直接返回Nan而不是返回有效部分
//(字符串“0xa” 之类的有效)

运算符规则和Java类似,不过有特殊地方,由于是弱类型语言,

var int =5.5;int %=2; // int为1.5
var int =5.0;int %=2; // int为1  
//除法同理
//能是整数,则优先为整数比如2.5*2 为5 而不是5.0

 

关系运算符:大多数和java c一样,需要特殊说明的是

== :等于(不包含类型) 如5==5.0 为true , 5==“5” 也为true 
===: 等于(包含类型) 如5===5.0 为true,5===“5” 为false 因为类型不能
!= !== 同理

位运算和java C一样 反码补码等。浮点数会去掉小数部分然后运算,

var x=-1;
var y=0xff;
console .log( x&y); 输出255//0xff & 11111111( 10000001 取反+1)
//0xff &0xff = 0xff

位运算只支持32为整数,Number内部是64位浮点数,无论是整数还是小数都要要注意误差问题

var x=0xffffffff;//32位
console.log((x>>>1)); // 无符号右移,证明32位

var x=0xffffffffffff; // 48位
console.log((x>>>1));//无符号右移,证明32位
var y=0xfffffffffffff;//7字节
console .log( y-1);
console .log( y);
console .log( y+1);
//结果正常

 

instanceof 运算符:返回Boolean 

var arr = new Array(10);
var ty=  arr instanceof  Array; //arr 是否是Array 的对象
console.log(   ty);

typeof运算符:返回字符串

var arr = new Array(10);
console.log( typeof (typeof arr));//输出string
console.log(typeof arr);//输出object

 

控制循环语句:if,switch,for,while,do while 和java c一样。

//for in遍历集合和对象(和lua的pairs ipairs类似)

var arr= [2,1,2,3,4,5,6,7,8,9];

for( var i=0 ; i<arr.length;i++)
{
    console.log( arr[ i]);
}

for( var i in arr)
{
    console.log( arr[ i]);//i为index
}

函数:三种方式定义函数 调用 func(5)

 function func(ARG)//局部函数
{
    console.log(ARG);
}

var func= function (ARG) {//局部函数
    console.log(ARG);
}

func= function (ARG) {  //全局函数
    console.log(ARG);
}

 

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!