测开之Javascript・《Javascript基础》

Posted 七月的小尾巴

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了测开之Javascript・《Javascript基础》相关的知识,希望对你有一定的参考价值。

介绍和基本使用

Javascript概述

要了解JavaScript,我们首先要回顾一下JavaScript的诞生。在上个世纪的1995年,当时的网景公司正凭借其Navigator浏览器成为Web时代开启时最著名的第一代互联网公司。由于网景公司希望能在静态html页面上添加一些动态效果,于是叫Brendan Eich这哥们在两周之内设计出了JavaScript语言。你没看错,这个们只是用了10天时间。为什么起名叫JavaScript?原因是当时Java语言非常红火,所以网景公司希望借Java的名气来推广,但事实上JavaScript除了语法上有点像Java,其他部分基本上没啥关系。

嵌入页面的方式

HTML中的脚本必须位于 <script></script> 标签之间,脚本 可被放在HTML <body>页面和 <head> 部分。

  1. 行间时间(主要用于事件)
<input type="button" name="11" οnclick=alert("ok~");>
  1. 页面 spript 标签嵌入
<script type="text/javascript">
	// 弹窗
    alert('ok!');
</script>
  1. 外部引入
<script type="text/javascript" src="login.js"></script>

基本用法

注释

我们可以添加注释来对我们编写的javascript代码进行解释,或者提高代码的可读性。在javascript中,注释通常是使用 //开头,如果是多行注释的话,则使用 /* 开头, */ 结尾。

下面我们来实际演示一下:

<script type="text/javascript">
    // 这是注释内容
    console.log("这里是单行注释")
    /*
    这里是多行注释
    */
    console.log("这里是多行注释")
</script>

变量

首先,我们来看一下,在javascript中的变量命名规范:

变量的命名

  • 变量可以使用短名称(比如a,b,x,y),也可以使用描述性更好的名称,比如(name、age)
  • 变量必须以字母开头
  • 变量也可以使用 $_ 符号开头(不过在javascript中不推荐这么定义变量)
  • 变量名区分大小写
  • 使用小驼峰命名

变量声明

在javascript中变量可以先声明后赋值。

var name;
name = '小余';

也可以在声明的时候赋值

var name = '小余';

同时给多个变量赋值

var a = 100, b = 200,  c = 300;

定义变量的三种方式

  1. var:定义的变量可以跨代码块访问
  2. let:定义块级作用域的变量
  3. const:定义常初始化必须赋值,值不可以改变,只能在块级作用域访问

数据类型

javascript中的数据类型和python类型,主要有分为字符串、数字、布尔、Null、Undefined、数组类型,下面我们来演示一下分别定义不同的数据类型:

string 字符串类型

var st = 'test';

number 数字类型

var a = 100;

boolean 布尔类型

布尔类型,只有true和false,这里和python不同的是,true和false首字母是小写的

undefined 类型

通常变量已声明,但是未赋值,他的值就是undefined
var unde

null类型

表示空对象,类型于python的None
var tr = null

arry 数组

数组类似于python中的列表,可以通过下标取值
<script type="text/javascript">
    // 创建一个数组
    var skill = Array("test1", "test2", "test3");
    // 打印数组中第一个数据
    console.log(skill[0]);
    // 打印数组的长度
    console.log(skill.length);
    // 从数组中删除最后一个元素
    console.log(skill.pop());
    // 在数组尾部添加一个新的元素
    console.log(skill.push("test4"));
</script>

运算符

  • 算数运算符: +(加)-(减)*(乘)/(除)%(余)
  • 赋值运算符:=+=-=*=/=++
  • 比较运算符:=====><<=!=
    基本上这些运算符都和python比较类似,这里主要讲一下 ===,在Python中,只有==的概念,但是在javascript中,如果是==则会校验数据的值是否相等,不会校验你的数据类型,如果使用的是===,则会判断数据类型和数据值。
  • 逻辑预算符:&&(与)||(或)!(否)

条件语句

if条件

<script type="text/javascript">
    var a = 199;
    // 判断a 大于 200
    if(a>200){
        console.log("a 大于 200");
    }
</script>

else语句

<script type="text/javascript">
    var a = 199;
    // 判断a 大于 200
    if(a>200){
        console.log("a 大于 200");
    }
    // 否则提示
    else{
        console.log(a);
    }
</script>

else if语句

<script type="text/javascript">
    var a = 199;
    if(a>200){
        console.log("a 大于 200");
    }
    else if(a>100){
        console.log("a 大于100");
    }
    else{
        console.log(a)
        }
</script>

函数

定义一个简单的函数

<script type="text/javascript">
    // 函数的定义, 使用 function
    function test(){
        console.log("这里是一个简单的函数")
    }
    // 函数的调用
    test()
</script>

函数带参数

<script type="text/javascript">
    // 函数的定义, 使用 function
    function test(var1, var2){
        console.log(var1 + var2)
    }
    // 函数的调用
    test(100, 200)
</script>

函数返回值

<script type="text/javascript">
    function test(var1, var2){
        // 使用 return 来返回值,在使用 return时,函数会停止运行,并返回指定值
        return var1 + var2
    }
    // 定义一个变量接受函数返回值
    const res = test(100, 200)
    console.log(res)
</script>

对象

创建对象

在javascript中,以下两种方式均可创建对象

<script type="text/javascript">
    // 方式一
    test = new object();
    // 方式二
    var test = {};
    
</script>

对象属性

<script type="text/javascript">
    // javascript中创建对象类似于python的字典, 以键值对的形式存储
    var test = {"name": 'test', "age": 18};
    
    // 创建对象属性声明也可以横跨多行,注意这里键的名称没有引号
    var test1 = {
        name: 'python',
        age : 18
    }

</script>

对象方法

对象方法是作为属性来存储的函数。

<script type="text/javascript">
    
    // 创建对象属性声明也可以横跨多行
    var test1 = {
        name: 'python',
        age : 18,
        // 在对象中作为属性存储函数
        fun: function (var1, var2){
            alert(var1);
            alert(var2 * var1);
        }
    }
    
    test1.fun(111, 222)

</script>

循环

while循环

while(条件一句){
	循环体
}

下面是一个关于while循环的案例

<script type="text/javascript">
    var a = 0
    while (a<=5){
        alert(a);
        a ++
    }

</script>

for循环

for(语句1, 语句2, 语句3){
	循环体代码
}

语句1: 在循环开始之前执行
语句2:循环条件(成立则执行循环体)
语句3: 每一轮循环之后执行的一句
<script type="text/javascript">
    var aList = Array(11, 22, 33)
    for (var a = 0; a < aList.length; a ++){
        alert(aList[a])
    }

</script>

for in 循环

for (x in arrays){
	循环体代码
}

遍历数组,x为数组的下标
编辑对象,x为对象的属性

下面是遍历数组中的数据

<script type="text/javascript">
    var aList = Array(11, 22, 33)
    for (x in aList){
        // 遍历数组中的数据
        alert((aList[x]));
    }

</script>

下面是遍历对象的数据

<script type="text/javascript">
    var objC = {"name": "test", "age": 10};
    // 遍历对象
    for (x in objC) {
        alert(x);
        alert(objC[x])
    }
</script>

扩展

数组遍历

  • forEach 方法:遍历列表,接受一个处理的回调函数
<script type="text/javascript">
    var arr = [11, 22, 33]
    arr.forEach(function (item, index, array){
        /*
          item: 循环遍历数组中的值,如11
          index: 获取当前数组的索引
          array: 获取当前数组
        */
        console.log(item, index, array)
    })
</script>
  • filter方法:对数组进行过滤
<script type="text/javascript">
    var arr = [11, 22, 33]
    var res = arr.filter(function (item, index){
        // 过滤当前数组中大于30的数据
        return item > 30
    })
    console.log(res);
</script>
  • find:遍历数组,返回符合条件的第一个元素
<script type="text/javascript">
    var arr = [11, 22, 33]
    var res = arr.find(function (item, index){
        // 过滤当前数组中大于11的第一个数据
        return item > 11
    })
    console.log(res);
</script>
  • findindex:遍历数组,返回符合条件的索引
<script type="text/javascript">
    var arr = [11, 22, 33]
    var res = arr.findIndex(function (item, index){
        // 过滤当前数组中大于11的数据的所以
        return item > 11
    })
    console.log(res);
</script>

以上是关于测开之Javascript・《Javascript基础》的主要内容,如果未能解决你的问题,请参考以下文章

测开之・《前后端交互axios》

测开之函数进阶篇・第六篇《闭包》

测开之・《使用vue-cli(vue脚手架)快速搭建项目》

测开之HTML・第一篇《HTML语法基础》

测开之CSS・第一篇《CSS语法基础》

测开之面向对象进阶篇・《多态》