1.JSz的组成:
ECMAScript(JavaScript语法),DOM(页面文档对象模型),BOM(浏览器对象模型)
1,ECMAScript 是由ECMA 国际( 原欧洲计算机制造商协会)进行标准化的一门编程语言,这种语言在万维网上应用广泛,它往往被称为 JavaScript 或 JScript,但实际上后两者是 ECMAScript 语言的实现和扩展。
2,DOM.文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标记语言的标准编程接口。通过 DOM 提供的接口可以对页面上的各种元素进行操作(大小、位置、颜色等)。
3,BOM (Browser Object Model,简称BOM) 是指浏览器对象模型,它提供了独立于内容的、可以与浏览器窗口进行 互动的对象结构。通过BOM可以操作浏览器窗口,比如弹出框、控制浏览器跳转、获取分辨率等。
2.JS的输入输出语句
3.变量
变量的概述:本质:变量是程序在内存中申请的一块用来存放数据的空间。
变量声明和赋值
var age;//声明一个名称age的变量
age = 10//给age 这个变量赋值伪10
声明一个变量并赋值,称之为变量的初始化
var age = 18;//声明变量同时赋值为18
- 更新变量。一个变量被重新复赋值后,它原有的值就会被覆盖,变量值将以最后一次赋的值为准。
var age = 18;
age = 81;//最后的结果81因为18被覆盖掉了
2.同时声明多个变量,需用英文隔开
var age = 10, name = 'zs', sex = 2;
3.声明变量的特殊情况
4,变量的命名规范
5,数据类型的简介
5.1,JS把数据类型分为两类:
简单数据类型
复杂数据类型
简单数据数据类型
5.2变量名称
string 字符串型 :单双引符合包含的
number 数字型 :三个特殊性,Infinity,无穷大。-Infinity,无穷小。NaN,Not a number,代表一个非数值。
布尔型Boolean:true(触)和false(否死),true表示真,false表示假。
布尔型和数字相加时,true的值为1,false的值为o。
undefined和Null:
一个声明后没有被赋值的变量会有一个默认值 undefined ( 如果进行相连或者相加时,注意结果)
var variable;
console.log(variable); // undefined
console.log('你好' + variable); // 你好undefined
console.log(11 + variable); // NaN
console.log(true + variable); // NaN
一个声明变量给 null 值,里面存的值为空(学习对象时,我们继续研究null)
var vari = null;
console.log('你好' + vari); // 你好null
console.log(11 + vari); // 11
console.log(true + vari); // 1
string字串符
5.3检测变量数据类型
5.4 数据类型装换
使用表单、prompt 获取过来的数据默认是字符串类型的,此时就不能直接简单的进行加法运算,而需要转换变 量的数据类型。通俗来说,就是把一种数据类型的变量转换成另外一种数据类型。 我们通常会实现3种方式的转换:
转换为字符串类型
转换为数字型
转换为布尔型
5.5 装换总结
10.变量不同类型之间的转换
显式转换:系统强制转换或者手动转换
Number( 数字类型)
String( 字符串)
Boolean( 布尔值)
parseInt(取整 )
parseFloat( 保留小数)
toFixed( 取几位小数)
隐式转换:系统自动根据当前的符号进行转换。
+ - * / % == ++ -- ! ......
课堂练习
<!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>
</head>
<script>
// 先声明一个变量为输入
// 再声明一个变量用 + 拼接起来
// 再弹出结果
var myname = prompt('请输入你的名字');
var nav = '欢迎您' + myname + '的到来';
alert(nav);
var age = prompt("请输入你的年龄");
var str = '你今年已经' + age + '岁了';
alert(str)
</script>
<body></body>
</html>
<!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>
</head>
<body>
<script>
var year = prompt('请输入你的出生年月'); // 用户输入
var sz = 2021 - year //处理结果
var age = '你今年' + sz + '岁了'; // 输出,year取过来是字符串型, 减法有隐式装换
alert(age) //弹出显示
</script>
</body>
</html>
<!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>
</head>
<script>
var n1 = prompt('请输入第一个值');
var n2 = prompt('请输入第二个值 ');
var n3 = parseInt(n1) + parseInt(n2);
alert('结果是'+ n3);
</script>
<body>
</body>
</html>
<!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>
</head>
<script>
var myname = prompt("请输入您的姓名");
var age = prompt("请输入您的年龄");
var sex = prompt("请输入您的性别");
console.log(typeof myname);
console.log(typeof age);
console.log(typeof sex);
console.log("姓名:" + myname, "年龄:" + age, "性别:" + sex);
</script>
<body></body>
</html>
6.0运算符
6.1运算符
赋值运算符 = 将等式右边的结果赋值给左边。
javascript使用“ = ”运算符来给变量或者属性赋值(最低优先级)
6.2算数运算符
+(加) - (减) * (乘) / (除) % (取余)
6.3递增和递减运算符
++C 前置运算符,先自加,后运算
c++ 后置运算符,先原值运算,后自加
单独使用结果一致,与其他代码联用时,执行结果不同。
6.4比较运算符
关系运算符(结果为布尔值) <、>、<=、>=、==( 相等 )、===(全等)、!=(不相等) !==(不全等)
6.5逻辑运算符
6.6 逻辑中断
X&&Y X为true,返回为Y,X为false,返回为X。
X||Y X为true,返回为X,x为false,返回为Y.