JavaScript学习


一、 Web端哪些时候需要用到?

  行为交互:例如:返回顶部

  数据交互:例如:筛选关键词

  逻辑交互:例如:单选选男选女

二、JavaScript组成

  ECMAScript:JavaScript语法和基本对象

  DOM:文档对象模型,js代码去操作HTML标签

document.getElementById("content")

  BOM:浏览器对象模型,浏览器内置功能

alert("点击了");




    
    Title


    
    
    

显示内容

三、JavaScript建议放到body部分的最下部位:

1)单个文件使用一个script

2)多个文件使用一个script,要创建一个js文件




    
    Title


    
    
    

显示内容

v1.js文件

function clickMe(){
//            alert("点击了");
//            1、获取用户输入的内容
            var tag = document.getElementById("content");
            var userInputData = tag.value;

//            2、找到div,并将内容赋值
            var tagTxt = document.getElementById("txt");
            tagTxt.innerText = userInputData;
        }

 四、注释

1)HTML注释

   单行&多行注释:

2)CSS注释,必须在style的代码块中。

3)JavaScript注释,必须在script的代码块中。

五、JavaScript变量

变量名标准的规范:

var userName = “liusijiang”;

1)局部变量:函数中变量。

2)全局变量:代码块顶格。




    
    Title


    

六、JavaScript的数据类型



七、JavaScript语句

1)、判断语句

    var age = 19;
    if(age < 19){
        ...
    }else{
        ...
    }
    var age = 19;
    if(age < 18){
        ...
    }else if(age == 19){
        ...
    }else{
        ...
    }

2)循环语句

    var dataList = [11,22,33];
    for (var i = 0;i < dataList.length;i++){
        console.log(i);  //print
    }
    // 上面for语句可以换成如下
    for (var idx in dataList){
        var data = dataList[idx];
        console.log(idx,data);
    }

八、函数




    
    Title




运行结果使用F12》console(控制台)》查看

 匿名函数(函数没有名字),作用:因在开发过程中名字过多导致重名

function (arg) {

  console.log(12345678);
}



    
    Title




匿名函数的使用




    
    Title




自执行函数,自动执行(闭包)

    function f(a1,a2) {
        console.log(a1,a2);
    }
    f("xxxxx","123");
// 上面代码转换成如下
    (function f(a1,a2) {
        console.log(a1,a2);
    })("yyyy","4321")

运行结果如下:

 九、JSON序列化

JSON.stringify(对象),js中的对象转换成JSON字符串




    
    Title




运行结果如下:

JSON.parse(字符串),JSON字符串转换成js对象

//JSON.parse(字符串),JSON字符串转换成js对象
    var dataString = '{"name":"liusijiang","age":19}';
    var info = JSON.parse(dataString);
    console.log(info);  // 执行结果:{name:"liusijiang",age:19}

运行结果如下:

 十、ES5

现阶段ES6(很多前后端分离的项目),ES6编译转换成ES5

JavaScript基础语法

JavaScript应该放在什么位置?

1、行间JS

  优势

  劣势

2、内部JS

  优势

  劣势

3、外部JS

  优势

  劣势