9.1_JavaScript

JavaScript

编程: 就是让计算机解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程

计算机程序: 所执行的指令集合,通过计算机程序来命令计算机,任何能执行代码的设备都是计算机

计算机语言: 机器语言 汇编语言 高级语言 计算机最终执行的都是机器语言

编程语言: 类似于人的语言 一系列规定的格式词汇向计算机发出命令

汇编语言: 本质和机器语言相同 指令和英文缩写的标识符

编程语言和标记语言的区别

标记语言m:是被动的 是被读取的那一方

高级语言s:主动的 读取的那一方 有很强的逻辑性和行为

数据存储单位

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RAkwac2F-1577928007727)(9-1_JavaScript.assets/1567302800432.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)]

ECMAScript

是ecma规定了js的标准的语法

DOM 文档对象模型

可以对页面上的各种元素进行操作(大小、位置、颜色等)

BOM 浏览器对象模型

可以操作浏览器窗口,比如弹出框、控制浏览器跳转、获取分辨率等。

初始JS

基本的js语法

行内式

<input type="button" value="点我试试" onclick="alert('Hello World')" />

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-URikXxNu-1577928007739)(9.1_JavaScript.assets/1567305075398.png)]

内嵌js

<script>
    alert('Hello  World~!');
</script>

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rULRZb0w-1577928007747)(9.1_JavaScript.assets/1567305236132.png)]

※外部js文件

<script src="my.js"></script>

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KGyhJArS-1577928007748)(9.1_JavaScript.assets/1567305112297.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)]

数据类型

作用: 不同的数据类型所占存储空间不同 为了便于规定各种数据类型所占空间 所以需要数据类型

注意点: js是一种弱类型/动态语言 js 的变量数据类型只有程序在运行过程中根据值来确定的 后覆盖值的数据类型不同 以最后覆盖的值的数据来定

扩展: ts 一种以后用得上的语言

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pKkdh1Tz-1577928007757)(9.1_JavaScript.assets/1567323617381.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-O9SIK4D0-1577928007759)(9.1_JavaScript.assets/引用数据类型.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)]

※字符串长度

length 获取整个字符串长度 (数组长度也是length获取 )

var strMsg = "我是帅气多金的程序猿!"
alert(strMsg.length); // 显示 11 表示字符长度11位

※字符串拼接

用+拼接 字符串和其他类型相拼接 最终显示是字符串

字符串 可以拼接

  • 字符串+数字也能拼接 = 字符串型+数字的字符串
  • 数字型+数字型可以相加
  • 字符串+变量可以字符串和变量值相连

口诀:数值相加 字符相连 变量引引加加

字符串空格会保留 有多少空格保留多少 html只保留一个空格

布尔型 Boolean

  • 布尔类型只有两个值:true 和 false

  • 其中 true 表示真(对),而 false 表示假(错)

  • 布尔型和数字型相加的时候, true 的值为 1 ,false 的值为 0。

布尔值为false的六种情况

  1. 未定义 undefined
  2. 为0
  3. 为null 空时
  4. 自身为false 但字符串的(’false‘)是为true的
  5. nan 非数值
  6. 空字符串时

简单数据类型 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)]

  • toString() 和 String() 使用方式不一样。
  • 三种转换方式,我们更喜欢用第三种加号拼接字符串转换方式, 这一种方式也称之为隐式转换。

字符串转换成数字型

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PR936PiU-1577928007765)(9.1_JavaScript.assets/1567339391217.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)]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值