美文网首页
记录1 var关键字的意义、undefined与null、对变量

记录1 var关键字的意义、undefined与null、对变量

作者: suhuanzhen | 来源:发表于2017-01-02 22:01 被阅读0次

    JavaScript中所有的数据类型----数字类型、字符串类型、布尔类型。特殊值null和undefined。

    注释代码

    注释代码不被运行也不会报错,这是因为解释器会自动忽略这些注释代码.

    定义变量添加var关键字的意义

    我们使用var关键子定义一个局部变量,如果不加var关键字那么就是全局变量了.
    变量定义标准的做法是变量以小写字母开头,通常除了第一个单词外,其他单词的首字母都大写,就像是 priceOfProduct一样。

    undefined

    返回undefined的理解

    1,我们定义一个变量,返回undefined

    var nik;
    >> undefined
    

    2,访问未赋值的变量,返回undefined

    nik;
    >> undefined
    

    3,我们定义一个函数,返回undefined

    function abc(x){
        return x+10;
    }
    >> undefined
    

    4,函数体没有返回值,调用函数返回undefined

    function abc(x){
        x+5;
    }
    >> undefined
    abc(12);
    >> undefined
    

    只要一条命令没有返回一个值,JavaScript都会返回undefined作为响应.

    • 访问变量会返回一个值
    var num =10;
    >> undefined
    num
    >> 10
    
    • 函数体有返回值,调用函数会返回一个值
    function abc(x){
        return x+5;
    }
    abc(2)
    >> 7
    
    • 对变量进行运算或赋值,会返回一个值
      对变量的运算或赋值操作的结果默认就有一个return语句把运算结果或赋值结果返回作为响应.
      var num=10既有定义变量num,也有对num赋值,不过这种情况下认为优先认为是定义一个变量,所以返回undefined.
    var num=10;
    >> undefined
    num*2+100;
    >> 120
    num = 99
    >> 99
    

    自增自减的对象必须是变量

    对变量的操作不会修改变量自身,除非将操作的结果赋值覆盖原来变量

    x= 3;
    >> 3
    x+1;
    >> 4
    x
    >> 3
    x= x+1;
    >> 4
    x
    >> 4
    

    自增自减操作直接修改变量自身

    3++;
    >> VM631:1 Uncaught ReferenceError: Invalid left-hand side expression in postfix operation
    a=3
    >> 3
    a++
    >> 3
    a
    >> 4
    ++a
    >> 5
    --a
    >> 4
    a
    >> 4
    

    字符串

    和字符串连接,结果是两个字符串的拼接

    var num=10;
    var string="10";
    >> undefined
    string+num;
    >> "1010"
    num+string;
    >> "1010"
    

    取出字符串中某个字符与取出数组元素的操作是一样的

    var string1="Mick";
    var string2="High Nick";
    string1[0]+string2[5]
    >> "MN"
    

    截取字符串slice

    #截取0到2的字符
    var string2="High Nick";
    string2.slice(0,3)
    >> "Hig"
    
    #截取3到结束的字符
    string2.slice(3)
    >> "h Nick"
    

    字符串大小写转换

    "Hello World!".toUpperCase();
    >> "HELLO WORLD!"
    "Hello World!".toLowerCase();
    >> "hello world!"
    

    一个标准的英语句子,应该是首字母大写,其他字母小写。如何把任意一个句子转换成标准形式?

    string="iM going to SCHOOL,it's going be late";
    a=string[0].toUpperCase();
    b=string.slice(1).toLowerCase();
    a+b;
    >> "Im going to school,it's going be late"
    

    布尔值

    • 定义布尔值直接写true或false,添加上引号则是字符串
    a=true;
    typeof(a)
    >> "boolean"
    b="true";
    typeof(b)
    >> "string"
    
    • 布尔值可以用于运算
      在运算表达式中true转为数字1进行运算,false转为数字0进行运算
    a=true;
    num=3;
    num+a*2+a*3;
    >> 8
    a=false;
    num=3;
    num+a*2+a*3;
    >> 3
    true>44
    >> false
    true+45>44
    >> true
    false+44>=44
    >> true
    

    等于

    两个等于号只要值相等,类型不做限制,结果就为true
    三个等于号要求值和类型都必须相同,结果才返回true

    3==3
    >> true
    3===3
    >> true
    3=="3"
    >> true
    3==="3"
    >> false
    

    布尔值和数字做比较时是以0或1的值进行比较,==只要值相等就返回true,而===则是false因为布尔值类型与数字类型不同

    "s"==true
    >> false
    0==false
    >> true
    0===false
    >> false
    1==true
    >> true
    

    布尔值进行比较时是转换为数值0或1进行比较的

    "false"==false
    >> false
    "false"===false
    >> false
    "true"==true
    >> false
    

    布尔值和字符串的值都可以是数值0或1,类型不同值相同,==就返回true

    true=="1"
    >> true
    false=="0"
    >> true
    false=="1"
    >> false
    true=="2"
    >> false
    

    undefined和null

    JavaScript使用undefined表示没有值或者没有返回值。例如我们创建了一个新的变量却没有使用=操作符为它赋值,那么该变量的值就是undefined。调用一个没有return值的函数也是返回undefined。
    当我们想要刻意表达“这是空的”时,通常使用null。

    var a=undefined;
    var b=null;
    >> undefined
    a
    >> undefined
    b
    >> null
    a=3;
    >> 3
    b=4
    >> 4
    

    使用undefined和null的场景模拟:
    以来到服装店为例,如果把变量设置为null,就代表你没有要买的衣服。如果把变量设置为undefined,就代表你暂时还没挑到要买的衣服,后面挑到合适的就买了。

    相关文章

      网友评论

          本文标题:记录1 var关键字的意义、undefined与null、对变量

          本文链接:https://www.haomeiwen.com/subject/bzxgvttx.html