JS基础入门

1.运算符

<1>运算操作符

“+”  加号

1.数学运算,字符串链接。

2.任何数据类型加字符串都等于字符串。

“-”  减号    “*”  乘号    “/”  除号    “%” 取余    “=” 赋值    “()” 括号

“++”    “--”     “+=”     “-=”    “/=”    “*=”    “%=”

<2>比较运算符

“>”    “<”    “==”    “>=”    “<=”    “!=”

1.比较结果为Boolean值。

<3>逻辑运算符

“&&”    “||”    “!”

1.运算结果为真是的值

2.被认定为false的值------undefined-----null-----NAN-----“”-----0-----false

2.条件语句

if(a>b){
    a++;
}
else{
    b++;
}

 if else语句,如果if括号中表达式为ture则执行if中的内容,否则执行else中的内容。else

扫描二维码关注公众号,回复: 2549136 查看本文章
if(a>10){
    a++;
}
else if(a>5){
    a += 2;
}
else if(a>0){
    a += 3;
}
else{
    a = -a;
}

 使用if...else if...else语句来选择多个代码块之一来执行

 3.switch case语句

switch(n){
    case"a" : console.log("a"); break;
    case"2" : console.log("b"); break;
    case ture : console.log("c"); break;
}

 switch case 语句中,首先设置表达式n。随后表达式的值会与结构中的每一个case的值作比较。如果存在匹配,则与该case关联的代码块会被执行。使用break来阻止代码自动的向下一个case运行。

4.typeof(a)/typeof a返回变量类型

变量类型有:number    string    Boolean    object    undefined    function 

未被定义的变量只有被typeof()时不会报错,并且返回undefined,其值为字符串类型

类型转换

1.var num  =Number('123');       //转换为数字类型的123
2.var num = Number(undefined);   //转换为NaN
                               //将括号内的类型转换为数字类型,如果转换对象是字符或者含有字符,那么转换为NaN

1.var num = parseInt(demo);      //转换为整型
2.var num = parseInt(ture);
3.var num = parseInt(false);     //当且仅当对象为Boolean类型时转化为NaN
4.var demo = '10';
  var num = parseInt(demo,16);    //以16进制为基底转化为10进制

1.var num = parseFloat(demo);     //转化为浮点数

1.var num = Boolean(num);         //转化为布尔值

1.var num = demo.toString();      //undefined和null不能用,否则报错

1.var num = 123.456789;
  docunment.write(num.toFixed(3));
                                //保留三位小数,四舍五入。

 

隐式类型转换

1.isNaN()    调用Number,与NaN进行对比,若相同返回ture,否则返回false

2.‘++’    ‘--’  将类型转化为数字类型

var a = '123';
a++;

其结果为数字类型的124

3.‘+’ 正号    ‘-’负号

var a = +'abc';
console.log(a + ': '+ typeof(a));
//NaN:Number

4.‘+’ 加号 调用string()任何类型与字符串相加都得字符串

5.‘-’    ‘*’    ‘/’    ‘%’    调用Number

6.‘&&’    ‘||’    ‘!’

7.‘>’    ‘<’    ‘>=’    ‘<=’    有数字进行比较就转化为数字,字符与字符比较比较的是ASCII的值

8.‘==’    ‘!=’    转化为同一类型进行比较 

5.函数

function sum(a){
    a++;
}
sum(a);

function为定义函数的关键字。

1.命名函数表达式

var text = function abc(){
}

2.匿名函数表达式

var demo = function() {
}
  •  当实参数量大于形参数量时,函数中arguments数组中存下所有实参
function sum(a){
    //arguments--[11,2,3] 实参列表
    console.log(arguments);
}
sum(11,2,3);
  • 映射规则,函数中形参变量值变化时对应arguments中的值也对应变化,arguments中的值变化时对应的形参变量的值也发上变化
function sum(a,b){
    //arguments[1,2] var a=1;
    a=2;
    arguments[0]=3;
    console.log(a);
}
sum(1,2);
  • 当形参的数量大于实参的数量时,多余形参的部分即使在函数中赋值,形参的值改变,但是不遵循映射规则,对应arguments数组中的值为undefined,如果给多余arguments数组中赋值,不仅形参的值为undefined,对应arguments数组中的值也为undefined
function sum(a,b){
    b=2;
    console.log(arguments[0]);
}
sum(1);
  • 函数的递归
//求斐波那契数列第n项的值
function fb(n){
    if(n == 1 || n == 2){
        renturn 1;
    }
    renturn fb(n - 1)+fb(n - 2);
}

6.预编译

预编译前奏

1.imply global 暗示全局变量,即任何变量,如果变量未经声明就赋值,该变量就为全局所有。

2.一切声明的全局变量,也归window所有。(window就是全局的域)

预编译

1.创建AO对象

2.找形参和变量声明,将变量和形参名作为AO属性名,值为undefined

3.将实参值和形参值统一

4.在函数体里面找函数声明,值赋予函数体

function fn(a){
    console.log(a);
    var a = 123;
    console.log(a);
    function a(){}
    console.log(a);
    var b = function(){}
    console.log(b);
    function d(){}
}
//function a(){}
//123
//123
//function(){}

猜你喜欢

转载自blog.csdn.net/qq_42469247/article/details/81260529