美文网首页
第1章 JavaScript基础语法

第1章 JavaScript基础语法

作者: yangsg | 来源:发表于2019-04-26 11:27 被阅读0次

    1. JavaScript的简介和特点

    1.1 简介和特点

    JavaScript(简称JS)是一个脚本语言,它是解释执行的(区别于Java的半编译半解释)。是一种“弱类型”的语言。

    强类型:Java是一种强类型的语言,声明变量的时候必须指明变量的类型,比如

    int a = 32;
    a = "haha"; //错误,变量类型一旦声明后不可更改
    

    弱类型:JS是一种弱类型的语言,变量本身没有类型,变量的类型取决于它的赋值,声明变量使用var关键字

    var a = 32;
    a = "haha";  //正确,可以通过赋值改变变量的数据类型
    
    1.2 在HTML中引入JS的方式
    • 内联方式(极少使用)
      在标记的事件中直接编写JS代码
    <input type="button" value="测试1" onclick="alert('哈哈');"/>
    
    • 嵌入方式
      在页面文件的<script></script>代码块中编写JS代码
    <script type="text/javascript">
      alert("abc");
    </script>
    
    • 外联方式(商业使用推荐外联)
      将JS代码编写在外部的.js文件中,通过<script>将外部JS引入

    myscript.js

    alert("xyz");
    

    xxx.html

    <script src="js/myscript.js" type="text/javascript" />
    

    2. JavaScript的数据类型

    JS本身是弱类型的语言,变量本身没有类型的概念,变量类型是根据赋值决定。
    JS中的数据的类型

    • Number类型:数字类型,包括整数,浮点数,NaN和Infinity
      NaN:是Not A Number的缩写,数字类型的“非数”
      Infinity:无穷大,一般出现在除数为0的情况
    • String类型:文本类型,表示字符串,可以使用单引号或双引号表示。
    • Boolean类型: 布尔类型,表示逻辑真和假
    • Null类型: 表示空
    • Undefined类型:表示未定义类型,通常出现在声明变量但未赋值的情况。
    • Object类型:对象类型,包括数组(Array),日期(Date),函数(Function),对象(Object)...

    typeof函数
    可以利用typeof(a)得到变量a的类型字符串

    var a = 32;
    var b = typeof(a);//得到a的类型的字符串表示“number”
    alert(b);
    

    数据类型转换
    做比较操作时(==),boolean值会被作为数字看待,数字内容的字符串也可以看做数字看待

    var b = true;
    if(b == 1){
        alert("真");
    }else{
        alert("假");
    }
    

    b当做数字看待(true-1,false-0),得到结果“真”

    var s = "1";
    if(s == 1){
        alert("真");
    }else{
        alert("假");
    }
    

    s当做数字看待,得到结果“真”
    ==的作用:比较数据内容是否相等,忽略了数据类型
    如果需要严格比较内容和数据类型,请使用===

    var b = true;
    if(b == 1){
        alert("真");
    }else{
        alert("假");
    }
    
    var s = "1";
    if(s === 1){
        alert("真");
    }else{
        alert("假");
    }
    

    都会得到“假”结果

    转换规则
    各个数据类型参与运算或表达式的规则:

    • 任何类型与字符串类型相加,得到字符串
    • 进行四则非加法运算时,所有类型都会转换为数值类型计算

    使用显式的类型转换

    • Number(str); 将str字符串转换成数值类型
    • 加空字符串形式: 将其他类型转换成字符串
    • boolean:直接参与数值运算即可 true相当于1,false相当于0
    var s = "1";
    s = Number(s); //字符串->数字
    if(s == 1){  //类型统一了,使用==和===效果是一致的
        alert("真");
    }else{
        alert("假");
    }
    

    3. JavaScript的运算符

    除了==和===理解与Java语言不一致,剩下运算符与Java一致。参考Java的第二章理解

    4. JavaScript的条件和循环

    与Java一致,参考Java的第三章理解
    初学者经常写错的循环中的变量声明
    Java

    for(int i = 0; i < 10; i++){
    }
    

    JavaScript

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

    5. JavaScript的函数

    JavaScript相当于Java中的方法或者类,本章节讲解当做方法来使用
    Java的方法

    public int haha(int a, int b){
      return a+b;
    }
    

    JS的方法

    function haha(a, b){
      return a+b;  //由return语句决定返回值的数据类型
    }
    

    Java的方法调用

    int x = haha(2,3);
    

    JS的方法调用

    var x = haha(2,3);
    

    相关文章

      网友评论

          本文标题:第1章 JavaScript基础语法

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