• JS学习-第一节


    一,输出

    <script type="text/javascript">

      //alert("弹出一个框");
      //document.write("在body里面输出");
      //console.log("控制台输出,开发者能够查看");
    </script>


      1,JS严格区分大小写
      2,每一条都用分号结尾,如果不加分号,浏览器会自动加上,
      但是会消耗系统资源,还会插入错误

      3,注释就用//或者/**/,快捷键是crtl+/ 

      4,自上而下覆盖

    二,字面量和变量

      字面量:不可改百年的值

      如1,2,3

      变量:保存字面量,可以任意改变

      如var a=123;//声明赋值同时进行

      console.log(a);

    三,标识符

      在JS中所有的可以由我们自主命名的都可以成为标识符,例如变量名,函数名,属性名。命名规则:

      1,标识符中可以包含字母数字下划线和$

      2,不可以用数字开头

      3,标识符不能是关键字和保留字

      4,标识符一般用驼峰式命名,如helloWorld

    四,数据类型

      数据类型指的就是字面量的类型

      JS中有6中数据类型:String,Number,Boolean,Null,Underfined,Object(前五个是基本数据类型,最后一个是引用数据类型)

    1,String

      1,字符串需要用引号引起来,单双都可以但不要混用

      2,转义字符需要加上,比如

      “表示成",

       制表符相当于tab键,

       相当于换行,

      相当于\,

      \相当于\\。

    2,Number

      1,所有的数值都是Number类型,包括整数浮点数。

      2,可以使用运算符typeof检查一个变量的类型 typeof变量

      var a=123;

      console.log(typeof a);

          Number.MAX_VALUE表示最大值,Number.MIN_VALUE表示零以上的最小值,如果数字超过最大值,则类型表示成Infinity(无穷)

          NAN表示不是一个数字

      3,如果使用JS进行浮点数元素运算,可能得到一个不精确的结果

      4,千万不要使用JS进行精度要求很高的运算

    3,Boolean

      1,只有两个值,真,假

            var bool=true;

      console.log(bool);

    4,Null

     类型值只有一个,就是null.用typeof检测的时候,会返回object

    5,Undefined

      1,类型值只有一个,就是undefined。用typeof检测的时候,会返回undefined

    五,强制转换

    1,转为String

    方法一:

      1,调用被转换字符的toString()方法。

      调用xxx的yyy方法就是xxx.yyy();

      2,null和undefined没有toString方法。如果调用会报错

    方法二:

      1,调用String()函数,转为字符串

      a=null;

      a=String(a);

      console.log(a);

    2,转为Number

    方法一:

      调用Number()函数转为Number类型

      1,如果纯数字转换,直接转换

      2,含有非数字内容,转换为NAN

      3,如果字符串是一个空串或者是一个完全是空格的字符串,则转为0

      4,Boolean类型转Number,true-->1,false-->0

      5,null转成0

      6,undefined转为NAN

    方法二:

      1,parseInt可以将字符串中从头到尾遍历,将有效的整数内容取出来,转换为Number。

      2,parseFloat可以取出有效的小数

      其他进制的数字

     (1),在JS中如果需要表示16进制的数字,则需要以0x开头

      a=0x10;

      a=0xff;

      (2),在JS中需要表示8进制的数字,则需要以0开头

      a=070;//有些浏览器当成8进制,有些当成10进制

      可以在parseInt中指定第二个参数,指定进制,

      如parseInt(a,10);//70   如parseInt(a,8);//56

      (3),在JS中需要表示2进制的数字,则需要以0b开头

      a=0b10;

    3,转为Boolean

      使用Boolean()函数转为布尔

      (1)字符串转布尔,除了空串都是true

      (2)数字转布尔,除了0和NAN都是true

      (3)null和undefined都会转换为false

      (4)对象也会转换为true

    六,算数运算符

      运算符也叫操作符

      (1),算术运算符,不会对原数字产生影响:+ - * /

      (2),任何值和NAN做运算都是NAN

      (3),任何值和字符串做+运算,都会转换成字符串然后与字符串做拼接,如果做-*/,则都转为Number

      (4),为任意数据类型加一个”“,即可将其转换为String类型字串,这是一种隐式的类型转换。

    一元运算符:+-

      其中有隐式类型转换,console.log(1+"2"+3);//123

                console.log(1+ +"2"+3);//6

    自增:++

      分为两种,后++(a++),前++(++a)

      var d=20;

      var result=d++ + ++d + d;//20+22+22=64

      a++的值等于原变量的值,++a的值等于变化了的新值

    自减:--

      a--的值等于原变量的值,--a的值等于变化了的新值

    逻辑运算符:! && ||

    非运算:

      对布尔值非运算,布尔值取反

      对非布尔值非运算,先转换为布尔值,然后再取反

      隐式转换:对同一个值进行两次非运算既可以转换成为Boolean类型

    与运算:

      两端都是true返回true。短路与&&,第一个表达式值为false不判断第二个,直接返回false

      如果第一个值是true一定要返回第二个

      如果第一个值是false则返回第一个。

    或运算:

      两端都是false,才返回false。短路或,第一个是true则不用判断第二个,直接输出true

      如果第一个值是flase一定要返回第二个

      如果第一个值是true则返回第一个。

    七,赋值运算符

    可以将符号右侧的值赋值给符号左边的变量

    a+=5;        -->a=a+5;

    a-=5;        -->a=a-5;

    a*=5;        -->a=a*5;

    a/=5;        -->a=a/5;

    a%=5;        -->a=a%5;

    八,关系运算符

    >:

      如果左边大于右边,返回true,否则false

    <:

      如果左边小于右边,返回true,否则false

    >=,<=

    对于非数值进行比较

      (1)先将其转换为数字然后进行比较

      (2)任何值和NAN比较都是false。(字串转换为数字是NAN)

      (3)如果符号两边都是字符串,则比较是字符串的编码。如果两位一样,则比较下一位,所以借用他对英文进行排序

      (4)如果比较两个字符串类型的数字,一定要转型,不然会出现不可预期的结果。

    九,Unicode编码

     在字符串中使用转义字符输入Unicode编码:

    方法一:

     可以直接在scripts中加上console.log("u2620");

    方法二:

      在网页中使用Unicode编码,&#编码,这里的编码要十进制的。(网上找的是十六进制的,通过电脑计算器就可以算出十进制对应的数字)

      如:<h1 style="font-size:200px;">&#9760;</h1>

    十,相等运算符

    ==:

      (1)当使用==运算时候,会转换为相同类型进行转换,大部分情况转换成数字。

      (2)NAN不和任何值相等,包括它本身

      (3)undefined和null比较是相等的

      (4)通过isNaN判断一个值是不是NaN

        如:console.log(isNaN("12"));

    !=:

      console.log(10!=5);//true

      类型不同会自动进行类型转换

    ===:

      用来判断两个值是否全等。和==类似,但是不做自动类型转换。

      console.log(null===undefined);//false

    !==:

      不全等,如果两个值不全等或者类型不相同则返回false,不会自动进行类型转换。

     

    十一,条件表达式

      a?b:c;

      如果a为true,则执行b,否则执行c

      如果a是非Boolean值,会自动转为Boolean值进行运算

    十二,运算符的优先级

      JS中&&比||运算级别高

      如果遇到运算级别不清楚,可以使用括号。

  • 相关阅读:
    Linux操作篇之配置Samba
    Chrome扩展实现网页图片右键上传(以E站图片搜索为例)
    Linux开机自动挂载NFS配置的一个误区
    ffmpeg指令解读海康威视摄像头
    linux服务器性能调优之tcp/ip性能调优
    多线程程序设计中的8条简单原则
    初识文件系统
    socket中的listen到底干了哪些事情?
    ip面向无连接?TCP面向连接?HTTP连接方式?
    网络层和数据链层的区别
  • 原文地址:https://www.cnblogs.com/lumc5/p/15119040.html
Copyright © 2020-2023  润新知