7.20 JS入门

6 篇文章 0 订阅
4 篇文章 0 订阅

学习内容:

一、JS相关

  • 浏览器本身不会执行JS代码,而是通过内置JS引擎来执行JS代码。JS 引擎执行代码时逐行解释每一句源码(转换为机器语言),然后由计算机去执行,所以JS 语言归为脚本语言,会逐行解释执行。
  •  JS三部分组成 ECMAScript(JS语法)  DOM(页面文档对象模型)  BOM(浏览器对象模型)
  • JS和CSS写的部分一样有 行内 内嵌 外部
  • JS注释 单行注释//   ctrl+/        多行注释/**/shift+atl+a

二、JS输入输出语句

    输入框          prompt(“请输入年龄”);

    弹出警示框   alert(“计算的结果是”)

    在浏览器控制台打印输出信息console.log(“我是程序员可以看到的”)

三、变量声明以及命名规范

  • 变量声明

       (1)变量声明 var age;声明一个age的变量 内存给一个空的

       (2)变量赋值age=10; 

       (3)输出结果 console.log(age);

       (4)初始化 var age=10;

特殊情况说明结果
var age; console.log(age);只声明,不赋值undefined
console.log(age)不声明,不赋值,直接使用报错
age=10;console.log(age);不声明  只赋值10
  • 命名规范

(1)由 字母 数字 下划线 $符号组成  数字开头 不能是关键字

(2)严格区分大小写

  • 一些需要注意的点

 (1)JS没有数据类型, 是由等号右边的值来确定的

 (2)isnaN判断是不是非数字   是非数字为true是数字为false

(3)String 单引号‘‘为字符串   嵌套要外双内单或者外单内双 要配套使用

(4).length计算字符串的长度 +进行字符串的拼接

(5)undefined和数字相加结果是NaN, null和数字相加结果是原数字

(6)typeof()查看数据类型

四、数据类型的转换和运算符

(1)把其他类型转换为字符串

         加号拼接字符串(加一个‘ ’)

         字符串拼接                               都是字符串隐式转换

(2)把其他类型转换为数字型

         parseInt(string)函数 转换为int型

         parseFloat(string)函数 转换为浮点型

(3)把其他类型转换为布尔型 Boolean()

        ‘‘ 0”, NAN, null, undefined 转换为false 其他为true

(4)运算符的优先级

优先级运算符顺序
1小括号()
2一元运算符++ -- !
3算数运算符先* / % 后 + -
4关系运算符>   >=   <   <=
5相等运算符==  !=  ===  !==
6逻辑运算符先&& 后||
7赋值运算符=
8逗号运算符

五、流程控制主要有三种

        顺序结构 分支结构 循环结构 和Java语句相似,这里跳过

六、数组

  • 数组的创建

 (1) var a=new Array(); 创建一个空数组

 (2)var arr=[];数组里面可以放置任意类型的数据

  • 数组新增元素

(1)修改length arr=[4,5,6,7] arr.length=5

(2)修改索引arr=[4,5,6,7]   arr1[4]=’123’

  • 不确定有多少参数时用 arguments是一个伪数组

(1)伪数组不是一个真正的数组

(2)伪数组具有数组的.length 属性

(3)伪数组按照索引的方式进行存储的

(4)伪数组没有真正数组的一些属性。pop() push()等。 

七、JS作用域相关和Java语言相似,这里略。

八、JS 预解析

      JS引擎运行JS分为两步 预解析 代码执行

     1、预解析(JS引擎会把JS里面所有的var还有function提升到当前作用域的最前面)

        (1)预解析分为变量预解析(变量提升)和函数预解析(函数提升)

        (2)变量提升就是把所有的变量声明提升到当前作用域的最前面,不提升赋值

        (3)函数提升就是把函数声明提升到最前面 不调用函数

 2、代码执行 按照代码书写的顺序从上往下执行

如下图:


学习产出:

1、利用for循环简单打印九九乘法表

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        var str = '';
        for (var i = 1; i < 10; i++) {
            for (var j = 1; j <= i; j++) {
                var result = i * j;
                str += i + "×" + j + "=" + result;
            }
            str += "  \n";
        }
        console.log(str);
    </script>
</head>

<body>

</body>

</html>

2、利用循环实现数组的倒置

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        var arr = [5, 4, 3, 2, 1];
        var temp = 0;
        for (i = 0; i <= arr.length - 1; i++) {
            for (j = 0; j <= arr.length - i - 1; j++)
                if (arr[j] > arr[j + 1]) {
                    temp = arr[j];
                    arr[j] = arr[j + 1];
                    arr[j + 1] = temp;
                }
        }
        console.log(arr);
    </script>
</head>

<body>

</body>

</html>

 

 3、利用if分支语句实现 输入年份,输出二月份的天数

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
        var flag = 0;
        var year = prompt("请输入年份");
        function isrunnian(year) {
            if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
                flag = 1;
            }
            return flag;
        }
        function days() {
            if (isrunnian == 1)
                alert("二月份" + "29" + "天");
            else
                alert("二月份" + "28" + "天");
        }
        days();
    </script>
</head>

<body>

</body>

</html>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值