Cocos-Js 准备(一)-基础语法

JavaScript 语法
一、变量
在JavaScript中声明变量时,在标识符前加var表示声明了一个局部变量,如:

var x = 10;//声明一个局部变量i,并赋值为10;
var y = 10; z = true;//声明两个局部变量,y为整形,z为布尔型

如果不加var 表示声明一个全局变量

x = 20;//全局变量x

二、常量

const X = 10; //初始化之后不可以修改,作用域局部,一般常量名全为大写,多个单词可用下划线

三、注释
和C++一样分为单行和多行注释

//var test = 10; //单行注释
/*
    var test = 10;
    var x = 10;   多行注释
*/

四、数据类型

1、数值类型:
        整数:可以分是八进制、十进制、十六进制其中0开头表示八进制,0x开头表示十六进制
        浮点数必须包含一个数字、一个小数点或"e",例如3.14、0.1e1、2E-12,此处"e"或"E"后跟一个整数相当于以10为底的幂运算。要求"e"前有数字,"e"后有整数

2、布尔类型
        只有两种值:true和false    
3、字符串类型
         "fish"  'fish' 都是字符串
4、数组类型
        var a = [1,2,3];//下标从0开始
5、对象类型
        var a = {height : 10,width : 10};

5、数据类型转换

1、转换成字符串:
数值类型和布尔类型可以转换成字符串类型,例如:


        var found = false;
        console.log(found.toString()) //输出 false
        var num1 = 10.0;
        var num2 = 10.2;
        var num3 = 10;
        console.log(num1.toString());//输出10.2
        console.log(num2.toString())//输出 10
    支持传参,指定
        console.log(num1.toString(2))//输出1010
        console.log(num1.toString(8))//输出12
        console.log(num1.toString(16))//输出a

2、转换成数字
把非数字的原始值转换成数字的函数:parseInt()和parseFloat(),例如:


        console.log(parseInt("12345red"));//12345
        console.log(parseInt("0xA"));//10
        console.log(parseInt("56.1"));//56
        console.log(parseInt("red123"));//NaN

        console.log(parseInt("10",2));//按照二进制数 解析10 返回十进制数2
        console.log(parseInt("10",8));//按照八进制数 解析10 返回十进制数10
        console.log(parseInt("10",16));//按照十六进制 解析10 返回十进制数字16

        console.log(parseFloat("123red"))//123
        console.log(parseFloat("0xA"))//0
        console.log(parseFloat("11.2.3"))//11.2
        console.log(parseFloat("0102"))//102
        console.log(parseFloat("red123"))//NaN

3、强制类型转换
(1)Boolean(value) –把value转成布尔类型
(2)Number(value) –把value转为数字
(3)String(value) –把value转为字符串

使用Boolean函数:
    Boolean("")      //false
    Boolean(0)       //false
    Boolean(null)    //false
    Boolean("hello") //true
    Boolean(50)      //true

使用Number函数 不能转的为NaN
    console.log(Number(false))//0
    console.log(Number(true))//1
    console.log(Number(undefined))//NaN
    console.log(Number(null))//0
    console.log(Number("1.2"))//1.2
    console.log(Number("1.1.2"))//NaN
    console.log(Number({name:"tony"}))//NaN

使用String函数,其中对象比较特殊
    console.log(String(null))//null
    console.log(String(undefined))//undefined
    console.log(String(0))//0
    console.log(String({name: "tony"}))//[object Object]    

五、运算符

Js中的运算符其中很多和C、C++一样
例如:
    ++ 有前置和后置
    -- 有前置和后置
    - 表示负数
    +、-、 *、 /、 % 
    +=、-= 、*= 、 /= 、 %=
    <、 <= 、 == 、三目运算符 等都有

一些特殊的运算符
    == 判断两个元素的值是否相等
    如:
        (10 == "10") //true
    === 必须是两个类型相同的值
    如:
        (10 === "10")//false
    != 与==相反
    如:
        (10 != "10")//false
    !== 与===相反
    如:
        (10 !== "10")//true

其它运算符
    (1)内存分配运算符new
     (2)对象类型判断运算符instanceof
     (3)引用号(.)调用属性、函数等操作如console.log()

六、控制语句
和C++中一样拥有

1、条件语句,例如:
//JS中if-else 结构
var i = 10
if(10 === i)
{
    console.log("相等")
}else
{
    console.log("不相等")
}
//JS中的多重条件判断
var i = 3
if(1 == i)
{
    console.log("1")
}else if(2 == i)
{
    console.log("2")
}else if(3 == i)
{
    console.log("3")
}
2、多分支语句switch
var i = 1;
switch (i)
{
    case 1:{
        console.log("1");
        break;
    }
    case 2:{
        console.log("2");
        break;
    }
    case 3:{
        console.log("3");
        break;
    }

}
3、循环语句
    var i = 0;
    while(i < 10)
    {
        ++i;
    }

    var i = 0;
    do{
        console.log(i)
        ++i;
    }while (i<10)

    for(var i = 0;i < 10; ++i)
    {
        console.log(i);
    }

4、跳转语句
    break ;//跳出当前循环
    break label;//跳出label所在循环
    search: for(var i = 0;i < 3;++i)
    {
        for(var j = 0;j < 3; ++j)
        {
            console.log(numbers[i][j]);
            break search;
        }
    }//输出结果 1

    continue; //结束当前次循环开启下一轮
    continue label; //结束所在循环层,开启label所对的循环
    search: for(var i = 0;i < 3;++i)
    {
        for(var j = 0;j < 3; ++j)
        {
            console.log(numbers[i][j]);
            continue search;
        }
    }//输出结果1、4、7

    return语句和C++一样

你可能感兴趣的:(CocosJs,javascript)