前端:javascript之基础知识

javascript基础知识

为什么要学习javascript

1.表单验证 - 减轻服务器端压力
2.页面的动态交互
3.页面动态效果

什么是javascript

  • JavaScript是一种基于对象和事件驱动的 , 并具有安全性能的脚本语言
  • JavaScript的特点
  1. 向HTML页面中添加交互行为
  2. 脚本语言 , 语法和Java类似
  3. 解析型语言 , 边执行边解释

js基本结构

  • 语法

在这里插入图片描述

JavaScript的应用

  • 显示数据
    在这里插入图片描述
    注意 <script…/script>可以在文档中的任何地方 . 一般放在头部或者尾部

JS的执行原理

在这里插入图片描述

网页中引入JS方式

  • 使用<script 标签
  • 外部JS文件 ( 推荐使用 )
    在这里插入图片描述
  • 直接在HTML标签中开
    在这里插入图片描述
    案例:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

    <script>
        //4种输出方式
        //1.弹窗  (浏览器事件)
        /*
        alert("Hello,World!");

        //2.输出在网页上 (html语言)   (文档对象事件)
        document.write("<h1>西部开源</h1>");

        //3.控制台输出  (调试语法)
        console.log("Hello,World!");

        //4.写在网页上
        document.getElementById("abc").innerHTML = '1';
*/

    </script>


</head>
<body>

<div id="abc">231</div>



</body>
</html>

变量

  • 先声明变量再赋值
    在这里插入图片描述
  • 同时声明和赋值变量
    在这里插入图片描述
  • 不声明直接赋值
    在这里插入图片描述
    变量可以不经声明而直接使用,但
    这种方法很容易出错,也很难查找
    排错,不推荐使用

数据类型

  1. undefined
    var width;
    变量width没有初始值,将被赋予值undefined
  2. null
    表示一个空值,与undefined值相等
  3. number
    var iNum=23; //整数
    var iNum=23.0; //浮点数
  4. boolean
    true和false
  5. string
    一组被引号(单引号或双引号)括起来的文本var string1=“This is a string”;

Typeof运算符

  • typeof检测变量的返回值
  • typeof运算符返回值如下:
    1.undefined : 变量被声明后 , 但未被赋值
    2.string : 用单引号或双引号来声明的字符串
    3.boolean : true 或 false
    4.number : 整数或浮点数
    5.object : javaScript中的对象 , 数组 , 或null

案例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>


    <script>

        //undefined 未定义内容
        //默认值.

        var width,height=10,name="小明说java"; //整数
        var size=3.141592653589793238462643;  //浮点数
        var flag = true; //布尔值
        var date = new Date(); //类
        var arr = new Array(); //数组

        //typeof

        document.write("<h1>"+typeof(arr)+"</h1>")
        document.write("<h1>"+typeof(width)+"</h1>")
        document.write("<h1>"+typeof(height)+"</h1>")
        document.write("<h1>"+typeof(size)+"</h1>")
        document.write("<h1>"+typeof(name)+"</h1>")
        document.write("<h1>"+typeof(flag)+"</h1>")
        document.write("<h1>"+typeof(date)+"</h1>")



    </script>

</head>
<body>

</body>
</html>

String对象

  • 属性
    字符串对象.length
  • 方法
    字符串对象.方法名()
    在这里插入图片描述
    案例:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

    <script>

        var str = "i love you";

        //javascript数组下标从 0 开始
        document.write("<h1>"+(str.length)+"</h1>");
        document.write("<h1>"+(str.charAt(3))+"</h1>");
        document.write("<h1>"+(str.indexOf("v"))+"</h1>");
        document.write("<h1>"+(str.substring(3,8))+"</h1>");
        document.write("<h1>"+(str.split(" "))+"</h1>");



    </script>



</head>
<body>

</body>
</html>

数组

  • 创建数组
    在这里插入图片描述

  • 为数组元素赋值

  • 访问数组->数组名[下标]
    在这里插入图片描述

案例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

    <script>

        //创建数组 : new Array()
        //数组自动扩容..........
        var arr = new Array(5);


        arr[0] = "苹果";
        arr[1] = "香蕉";
        arr[2] = "梨子";
        arr[3] = "猕猴桃";
        arr[4] = "樱桃";
        arr[5] = "地瓜";
        arr[6] = "傻瓜";

        console.log(arr[0]);
        console.log(arr[5]);
        console.log(arr[6]);


    </script>


</head>
<body>

</body>
</html>

数组常用方法

在这里插入图片描述

运算符号

在这里插入图片描述

注意 : 不同类型间比较,==之比较“转化成同一类型后的值”看“值”是否相等,
===如果类型不同,其结果就是不等

逻辑控制语句

if条件语句
switch多分支语句
for、while循环语句

中断循环

  • break
  • continue
    在这里插入图片描述

注释

  • 单行注释以 // 开始,以行末结束
  • n多行注释以 /* 开始,以 / 结束,符号/…… */ 指示中间的语句是该程序中的注释

弹窗提示

  • alert()
    alert(“提示信息”);
  • prompt()
    prompt(“提示信息”, “输入框的默认信息”);
    prompt(“请输入你喜欢的颜色”,“红色”);
    prompt(“请输入你喜欢的颜色”,"");
    案例:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

    <script>

        //alert("暗淡蓝点");
        var num = prompt("请输入加数","");
        var num2 = prompt("请输入被加数","");

        //转换函数
        num = parseInt(num);
        num2 = parseFloat(num2);

        console.log("和:"+(num+num2));


    </script>


</head>
<body>





</body>
</html>

语法约定

  • 代码区分大小写
  • 变量 , 对象 和函数的名称
    -JavaScript的关键字小写
    -内置对象大写字母开头
    -对象的名称通常是小写
    -方法命名规则和Java相同

程序调试

  • Chrome开发人员工具
    停止断点调试
    单步调试
    跳出当前函数
    移除断点
  • alert()方法
    案例:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

    <script>

        var num = prompt("请输入一个整数","");

        if (num>5){
            document.write("<h1>你太大了</h1>");
        } else {
            document.write("<h1>你太小了</h1>");
        }

        for (var i=0;i<num;i++) {
            document.write("<h2>"+i+"<br/></h2>");
        }


    </script>



</head>
<body>

</body>
</html>

常用的系统函数

  • parseInt (“字符串”)
    将字符串转换为整型数字
    如: parseInt (“86”)将字符串“86“转换为整型值86
  • parseFloat(“字符串”)
    将字符串转换为浮点型数字
    如: parseFloat(“34.45”)将字符串“34.45“转换为浮点值34.45
  • isNaN()
    用于检查其参数是否是非数字

自定义函数

  • 定义函数
    在这里插入图片描述
  • 调用函数
    函数调用一般和表单元素的事件一起使用 , 调用格式 :
    事件名= “函数名( )” ;
    案例:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>


    <script>

        function study() {
            for (var i=1;i<=5;i++) {
                document.write("<h3>欢迎学习JavaScript</h3>")
            }
        }

        function study2(nums) {
            for (var i=1;i<=nums;i++) {
                document.write("<h3>欢迎学习JavaScript"+i+"</h3>")
            }
            //console.log(arguments[1]);
        }

        function add(num1,num2) {
            return num1+num2;
        }

    </script>


</head>
<body>

<input type="button" value="点我" onclick="study2(prompt('请输入循环次数',''))">

</body>
</html>

调用无参函数

  • 调用无参函数 , 输出5次 “欢迎学习JavaScript ”
    在这里插入图片描述

变量的作用域

  • 全局变量
  • 局部变量
    在这里插入图片描述

事件

在这里插入图片描述

案例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

    <script>
        function f() {
            document.write('你丑死了');
        }
    </script>



</head>

<body onload="f()">

</body>
</html>

案例二:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

    <script>
        //1.创建一个string对象
        //2.通过split分割为数组
        //3.修改数组元素的值
        //4.打印查看

        var fruit = "apple,orange,banana,peach,watermelon";
        var arrList = fruit.split(",");

        console.log(arrList[0]);
        console.log(arrList[1]);
        console.log(arrList[2]);
        console.log(arrList[3]);
        console.log(arrList[4]);
        console.log("==============================重新组成字符串");

        //join , 通过指定的分隔符链接数组元素,返回字符串.
        var str = arrList.join("");
        console.log(str);
        console.log("==============================排序前");
        var num = "9 4 7 2 8 4 6 5 1 4";
        var numList = num.split(" ");
        console.log(numList);
        console.log("==============================排序后");

        //排序 , 默认为升序
        numList.sort();
        console.log(numList);

        console.log("==============================Push前");
        console.log(numList);
        console.log("==============================Push后");
        //push : 向数组元素中添加内容 , 默认排在最后面.
        numList.push(7);
        console.log(numList);

    </script>


</head>
<body>

</body>
</html>
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。、可私 6信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。、可 6私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。、可私 6信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值