JavaScript
编程: 就是让计算机解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程
计算机程序: 所执行的指令集合,通过计算机程序来命令计算机,任何能执行代码的设备都是计算机
计算机语言: 机器语言 汇编语言 高级语言 计算机最终执行的都是机器语言
编程语言: 类似于人的语言 一系列规定的格式词汇向计算机发出命令
汇编语言: 本质和机器语言相同 指令和英文缩写的标识符
编程语言和标记语言的区别
标记语言m:是被动的 是被读取的那一方
高级语言s:主动的 读取的那一方 有很强的逻辑性和行为
数据存储单位
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RAkwac2F-1577928007727)(9-1_JavaScript.assets/1567302800432.png)]](https://i-blog.csdnimg.cn/blog_migrate/63c28ee41bc856b43999c3723c4815ca.png)
每个单位之间相隔1024 例外1字节是8位
浏览器组成 √
渲染引擎 : 解析html和css 称内核 用的多的是blink和webkit
js引擎:称js解释器 读取页面中的js代码处理 比如chrome的v8解释器
JS作用
- 表单动态校验(密码强度检测):JS 产生最初的目的
- 网页特效
- 服务端开发(Node.js)
- 桌面程序(Electron)
- App(Cordova)
- 控制硬件-物联网(Ruff)
- 游戏开发(cocos2d-js)
JS执行

报错之后后面内容不执行
JS组成 √
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PXyyqZDd-1577928007737)(9.1_JavaScript.assets/1567304353489.png)]](https://i-blog.csdnimg.cn/blog_migrate/799713dd8b30b2fdc866b3c6dcd30fd6.png)
ECMAScript
是ecma规定了js的标准的语法
DOM 文档对象模型
可以对页面上的各种元素进行操作(大小、位置、颜色等)
BOM 浏览器对象模型
可以操作浏览器窗口,比如弹出框、控制浏览器跳转、获取分辨率等。
初始JS
基本的js语法
行内式
<input type="button" value="点我试试" onclick="alert('Hello World')" />
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-URikXxNu-1577928007739)(9.1_JavaScript.assets/1567305075398.png)]](https://i-blog.csdnimg.cn/blog_migrate/fee788c7dd21af5a64f4246e46358ce2.png)
内嵌js
<script>
alert('Hello World~!');
</script>
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rULRZb0w-1577928007747)(9.1_JavaScript.assets/1567305236132.png)]](https://i-blog.csdnimg.cn/blog_migrate/634c4169c86300c0726bb7c4fe8ef841.png)
※外部js文件
<script src="my.js"></script>
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KGyhJArS-1577928007748)(9.1_JavaScript.assets/1567305112297.png)]](https://i-blog.csdnimg.cn/blog_migrate/6ca641297cb90e1d28f32a2e17a53f7b.png)
JS注释
作用:给代码写标记说明的
快捷键 多行:shift+alt+/
单行:ctrl+/
※输入输出语句
| 方法 | 说明 | 归属 |
|---|---|---|
| alert | 弹出警示框 | 浏览器 |
| console.log | 控制台打印信息 | 浏览器 |
| prompt | 弹出输入框 可输入信息 | 浏览器 |
※变量
是一个存储数据的容器
// 定义变量
var age
// 变量初始化 并打印
var age = 18
console.log(age)
变量初始化: 初始化就是重新给其赋予一个新的数值
- var age=’ ‘; 声明变量并赋值
- console.log(age); 后台输出变量值
- var:使用该关键词计算机会自动分配内存空间
- age:是变量名 需要通过变量名来访问分配的空间 类似于门牌号
- ’ ':单引号内是赋值的数值 通过输出来导出数据
变量更新: 变量赋值以最后一次为准
赋值综合写法: 赋值综合用逗号隔开 省略var
全值变量: 不声明 只赋值 :age = 18
※命名规范
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nCFdETBx-1577928007749)(9.1_JavaScript.assets/1567320408586.png)]
大驼峰:单词首字母都大写
小驼峰:第一个单词首字母小写 其余大写
不赋值不定义能输出 name
小结
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2O4fMf8Y-1577928007754)(9.1_JavaScript.assets/1567321635273.png)]](https://i-blog.csdnimg.cn/blog_migrate/64fcb967bfdf46f5a3ab808990c11dd5.png)
数据类型
作用: 不同的数据类型所占存储空间不同 为了便于规定各种数据类型所占空间 所以需要数据类型
注意点: js是一种弱类型/动态语言 js 的变量数据类型只有程序在运行过程中根据值来确定的 后覆盖值的数据类型不同 以最后覆盖的值的数据来定
扩展: ts 一种以后用得上的语言
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pKkdh1Tz-1577928007757)(9.1_JavaScript.assets/1567323617381.png)]](https://i-blog.csdnimg.cn/blog_migrate/e50f45db22585297469dfd51798ef4f2.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-O9SIK4D0-1577928007759)(9.1_JavaScript.assets/引用数据类型.png)]](https://i-blog.csdnimg.cn/blog_migrate/66e371f349a029e7724db4cc1348d5b2.png)
注:以后一旦遇到引用数据类型时 立马要想到的是一小块内存地址 指向一大块内存
※数字型 Number
可以包含整数、小数
var age = 21; // 整数
var Age = 21.3747; // 小数
※数字型的进制:
常见进制有二进制、八进制、十进制、十六进制
// 1.八进制数字序列范围:0~7
var num1 = 07; // 对应十进制的7
var num2 = 019; // 对应十进制的19
var num3 = 08; // 对应十进制的8
// 2.十六进制数字序列范围:0~9以及A~F
var num = 0xA;
八进制: 数字前加0 等于八进制 0~7 逢八进一 要在程序里面显示8 就等于010 因为8进制没有8 所以直接进1 变成了10 前面加0 变成了010
十六进制: 十六进制范围前加0x 例:0xA
js中数值中的最大值和最小值
最大值: alert(Number.MAX_VALUE); // 1.7976931348623157e+308
最小值: alert(Number.MIN_VALUE); // 5e-324
数字型的三个特殊值
一般在控制台打印出现
alert(Infinity); // Infinity
alert(-Infinity); // -Infinity
alert(NaN); // NaN
- infinity 代表无穷大 大于任何数值
- infinity 代表无穷小 小于任何数值
- NaN 代表非数值
判断是否非数字 isNaN()
返回值是布尔值
例:
var usrAge = 21;
var isOk = isNaN(userAge);
console.log(isNum); // false ,21 不是一个非数字
var usrName = "andy";
console.log(isNaN(userName)); // true ,"andy"是一个非数字
※字符串 string
-
单引号包的都是字符串 包括包裹数字 单双引号都可用 推荐单引号
-
嵌套关系时 外单内双 或者外双内单
字符串特殊字符/转义符
作用:为了在html显示ASCII码 显示一些特殊字符 比如单引号这种在页面中展示这时就会用到转义符 转义符以\开头
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rfNF55zx-1577928007762)(9.1_JavaScript.assets/image-20191228202530369.png)]](https://i-blog.csdnimg.cn/blog_migrate/9ad1302458456466089f0d0191630ff4.png)
※字符串长度
length 获取整个字符串长度 (数组长度也是length获取 )
var strMsg = "我是帅气多金的程序猿!"
alert(strMsg.length); // 显示 11 表示字符长度11位
※字符串拼接
用+拼接 字符串和其他类型相拼接 最终显示是字符串
字符串 可以拼接
- 字符串+数字也能拼接 = 字符串型+数字的字符串
- 数字型+数字型可以相加
- 字符串+变量可以字符串和变量值相连
口诀:数值相加 字符相连 变量引引加加
字符串空格会保留 有多少空格保留多少 html只保留一个空格
布尔型 Boolean
-
布尔类型只有两个值:true 和 false
-
其中 true 表示真(对),而 false 表示假(错)
-
布尔型和数字型相加的时候, true 的值为 1 ,false 的值为 0。
布尔值为false的六种情况
- 未定义 undefined
- 为0
- 为null 空时
- 自身为false 但字符串的(’false‘)是为true的
- nan 非数值
- 空字符串时
简单数据类型 undefined 和 null
-
变量声明未给值 = 未定义的undefined
-
undefined 和数字相加是nan 不是一个数值了
-
null 空 (对象 object) 和数值相加等于数值
两者的区别:
null 是一个表示”无”的对象,转为数值时为 0;
undefined 是一个表示”无”的原始值,转为数值时为 NaN。
定义变量未给赋值时 就是undefined
检测变量数据类型 typeof
语法:
var num = 18;
console.log(typeof num) // 结果 number 数字型
特殊类型object
Object 类是类层次的根类 每个类都把Object作为一个父类 是所有类的基类
其中大写的是Object对象名称 object小写的是方法返回值中格式默认的
字面量
从表面就能看出数据类型
数字类型是蓝色 字符串是黑色
数据类型转换
为什么要进行数据类型转化:因为需要进行算法运算 需要类型相同才能运算
共用语法:
字符串转换
console.log(num + '');
数字型转换
parseInt(变量) 可以把 字符型的转换为数字型 得到是整数
console.log(parseInt('3.94')); // 3 取整
console.log(parseInt('120px')); // 120 会去到这个px单位
parseFloat(变量) 可以把 字符型的转换为数字型 得到是小数 浮点数
console.log(parseFloat('3.14')); // 3.14
console.log(parseFloat('rem120px')); // NaN
转换字符串型
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-L2q6vhOY-1577928007763)(9.1_JavaScript.assets/1567328838334.png)]](https://i-blog.csdnimg.cn/blog_migrate/a378c9d5c4f6d947065254c6f6ec17f1.png)
- toString() 和 String() 使用方式不一样。
- 三种转换方式,我们更喜欢用第三种加号拼接字符串转换方式, 这一种方式也称之为隐式转换。
字符串转换成数字型
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PR936PiU-1577928007765)(9.1_JavaScript.assets/1567339391217.png)]](https://i-blog.csdnimg.cn/blog_migrate/f4623a78ec5e0efaa066a23d8167fe0c.png)
- 注意 parseInt 和 parseFloat 单词的大小写,这2个是重点
- 隐式转换是我们在进行算数运算的时候,JS 自动转换了数据类型
转布尔型
var a = 1
console.log(Boolean(a)) // true
- 代表空 、否定的值 全部会转换为false 其余为true 为空的值有:0、nan、null 、undefined
扩展 √
翻译器翻译?: 两者的翻译的时间点不同
编译:代码执行前进行编译 生成中间代码
解释:运行时进行及时解释 并立即执行(当编译器以解释方式运行时 也称为解释器)
关键字: js本身已经使用的单词 保留字 将来可能成为关键字的词 不能作为变量名方法名来使用
报错
已经引用 没有被定义
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-65MNXXTW-1577928007766)(9.1_JavaScript.assets/1567328029182.png)]](https://i-blog.csdnimg.cn/blog_migrate/7da2f35fc745e2f4d1979b0836e8d794.png)
本文全面介绍了JavaScript编程的基础知识,包括编程概念、数据类型、变量、字符串处理、数字型、布尔型等核心内容,以及JS在网页特效、服务端开发、桌面程序等多个领域的应用。
922

被折叠的 条评论
为什么被折叠?



