JS基础

作者: Lawliet_cxy | 来源:发表于2019-04-09 11:16 被阅读0次
    console.log('hello world!');
    
    • JavaScript并不强制要求在语句后加上;,它会自动在每句语句末尾补上,但是最好还是加上。
      行注释://
      块注释:/* */

    数据类型:

    1.Number:

    123;//整型
    0.123;//浮点型
    1.234e3;//科学计数法表示1.23*1000,等同于1234
    -99;//负数
    NaN;//Not a Number,无法计算结果时用NaN表示
    Infinity;//表示无限大,数值超过JavaScript的最大数值时,就显示为Infinity
    

    2.字符串
    字符串是以单引号'或双引号括起来的文本,如'abc'"abc"
    输出多行字符串,不用一直使用/n,使用`xxx`即可

    console.log('多行
    字符串
    测试');
    

    处理字符串常用方法(调用这些方法不会改变字符串本身,只是返回一个新的字符串):

    var s = "hello";//定义一个小写的hello字符串
    s.toUpperCase();//将hello变为HELLO,但是此时s的值并没有变,只是创建了一个新的字符串
    console.log(s);//打印出s的值依然为hello
    
    • toUpperCase():把一个字符串全部变为大写
    var s = 'aaa';
    s.toUpperCase();//返回'AAA'
    
    • toLowerCase():把一个字符串全部变为小写
    var s = 'AAA';
    s.toLowerCase();//返回'aaa'
    
    • indexOf():搜索指定字符串出现的位置
    var s = 'hello, world';
    s.indexOf('world');//返回7
    s.indexOf('aaa');//没有找到aaa子串,返回-1
    
    • substring():返回指定索引区间的子串
    var s = 'hello, world';//注意:,后面有个空格
    s.substring(0, 5);//从索引0开始到5(不包括5),返回'hello'
    s.substring(7);//从索引7开始到结束,返回'world',未指定结束索引就返回到字符串末尾
    

    3.布尔值
    布尔值只有truefalse
    4.比较运算符
    需要注意的是==比较和===比较
    ==:会自动转换数据类型来进行比较,会有很奇怪的结果
    ===:先比较数据类型,不一致的话直接返回false,数据类型一致才比较值
    尽量使用===比较
    关于比较运算符一些奇怪的例子:

    NaN === NaN;//false,NaN和所有值都不相等,包括它自己,只能通过isNaN(NaN)判断
    1 / 3 === (1 - 2 / 3);//false,浮点数在计算过程中会产生误差,计算机无法精准计算无限循环小数
    //如果要比较浮点数,可以通过计算它们之差的绝对值和一个特定的阈值相比较
    0.1 + 0.2 === 0.3//false,在JavaScript中二进制的浮点数0.1和0.2并不是很精确,在计算中产生误差
    

    5.null和undefined
    null表示值为空
    undefined表示值未定义
    6.对象

    var person = {
        name: 'lawliet',
        age:22,
        sex:'man'
    };
    person.name;//获取person对象的name属性
    person.age;//获取person对象的age属性
    

    7.变量
    JavaScript中变量名士大小写英文、数字、$_的组合,不能用数字开头,并且不能用JavaScript的关键字来命名,如iffor这种,声明一个变量用var语句

    var a = 1;//a=1
    

    strict模式:
    如果不用var声明变量,变量就会变为全局变量

    a = 233;//a现在是全局变量
    

    使用strict模式解决问题:

    'use strict'
    a = 10;//a现在不是全局变量
    

    相关文章

      网友评论

          本文标题:JS基础

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