1、什么JavaScript? 运行环境 : 浏览器
是一种具有安全性的客户端的脚本语言 用来实现与web页面交互
脚本语言:语言嵌入到html代码中
js可以让页面中静止的元素动起来
2、js的历史背景(了解)
布莱登.艾奇
JavaScript诞生于1995年。起初它的主要目的是处理以前由服务器端负责的一些表单验证。在那个绝大多数用户都在使用调制解调器上网的时代,用户填写完一个表单点击提交,需要等待几十秒,完了服务器反馈给你说某个地方填错了......在当时如果能在客户端完成一些基本的验证绝对是令人兴奋的。当时走在技术革新最前沿的Netscape(网景)公司,决定着手开发一种客户端语言,用来处理这种装简单的验证。当时就职于Netscape公司的布兰登·艾奇开始着手计划将1995年2月发布的LiveScript同时在浏览器和服务器中使用。为了赶在发布日期前完成LiveScript的开发,Netscape与Sun公司成立了一个开发联盟。而此时,Netscape为了搭上媒体热炒Java的顺风车,临时把LiveScript改名为JavaScript,所以从本质上来说JavaScript和Java没什么关系
95 -- 网景 liveScript
java javascript
h5 :
h5 和 js 关系 : 是一样的 目的都是让静止的东西动起来 动画
ECMAScript 欧洲计算机制造商协会 是一个组织 ,用来规范js语法 ES5 ES6
BOM 文档对象模型
DOM 浏览器对象模型
4、javascript 代码实现 内部脚本或外部连接
内部引入
1、所有的js代码必须出现在 <script>标签内 初学建议放到 body下面
2、<script>标签位置任意 除了title标签内
外部引入
3、使用 <script src="路径"></script>
4、具有src属性的script标签内js代码无效
5、javascript的几个输出语句
alert() 弹出对话框 阻塞其他代码执行
console.log() 控制台输出 用于调试
alert和 console.log 换行用“\n”
document.write( ); 在浏览器输出
document.write 可以识别CSS的内联样式和HTML标签的自带样式
快捷键 : ctrl + / 单行注释
ctrl + 上箭头 向上调整代码 (下箭头 向下调整代码)
总结 :
. 前面的叫 对象 document.write()
. 后面的有括号 叫方法 document.write()
6、js中的注释
7、js中的字面量(常量) 固定不变的量
数值number
十六进制 0--9 a--f 一般以 0x 颜色 : #ffffff
字符 string
用引号括起来的单个字或多个字以及5位数以上的数字串
但是注意 引号嵌套 外面用双引号,里面就用单引号,反之相反
8、js中标识(zhi)符(变量)的命名规范
1、 由 字母 数字 下划线 $ 组成
2、不能用数字开头
例如 : a3 sname age -age(错误) _json 5a(错误)
不要情绪化命名
驼峰式命名法 :
小驼峰 qianFengJiaoYu getElementById()
匈牙利命名 :
oBtn object
9、js中的变量
什么是变量 : 在程序运行的过程中 值有可能会发生变化
10、变量的定义和赋值
var 定义变量 (var 可以省略 不建议)
var num = 90;
定义多个变量时,用逗号隔开
变量必须先定义 后使用
11、js中输出结果时注意几个问题:
1、如果输出的是变量 不能加引号
3、如果输出的是数字 , 可以不加引号
4、如果输出字符和变量,中间必须用 + 连接
12、变量的数据类型(重点)
基本数据类型 :
布尔型 boolean 值有两个 true 真 false 假
复合数据类型(引用数据类型,对象数据类型) :
特殊数据类型 :
undefined null
function 函数
13、(扩展) 测试变量的数据类型
typeof 变量
typeof typeof( 变量 ) 结果都是string
typeof( 变量 ) 值的情况 : string number boolean undefined object function (没有null)
14、运算符和表达式 (重点)
运算符 : 操作运算的符号
表达式 : 一个常量、一个变量、一个式子 都称为表达式
每一类运算符有哪些??
每一类运算符对应的表达式??
每一类运算符对应的表达式的值??
15、算术运算符
运算符 : + - * / % (二元运算符 双目)
++ -- (一元运算符 单目)
- * / % 运算符对应的表达式值 :
1、两侧都是数值 正常计算
2、有一侧是纯数字字符串 字符串自动转换成数值 正常计算
3、有一侧是非数字字符串 结果NaN
NaN : not a number 不是一个数 NaN不等于任何数和他自己
% 模运算符 (求余数):
1、结果取决于 "%" 左侧的操作数
2、大数 % 小数 = 余数 如 5%3=2
3、小数 % 大数 = 小数(绝对值) 如 3%5=3
4、任何数 % 10 === 个位数
+ : 表示 加法运算 和 连接
数字和字符串相加 表示 连接 100+"10" - 10 --> 10000 结果类型 number
单目 ++ 自增 --自减
注意 :自增和自减运算符 操作数必须是变量
i++ 或 ++i
i++和++i的异同:
相同点 : 自增变量的值都会自增1
不同点 : 表达式的值不同
如果 ++i , 先将自增变量i的值赋值给 j , 然后自增变量i再自增1 (先赋值 后自增)
如果 i++ ,先将自增变量i的值自增1,在将自增变量i的值赋值给 整个表达式j
16、赋值运算符
= 赋值
将右侧的值 赋值给 左侧的变量
注意 : = 符号左侧必须是变量 如 y = 10-x
复合赋值运算符 : += -= *= /= %=
x+=10 等价 x = x + 10
17、关系运算符
运算符 : > >= < <= ==等于 ===全等于 !=不等于 !==不全等
表达式 : 3>4 2===3
表达式的值 : 表达式成立 为true,不成立 为 false
表达式值几种情况 :
1、两侧都是数值 正常比较
2、两侧都是字符 正常比较
根据字符的ASCII码 值 进行比较
a--97 A--65 0--48 往后每个数加1
3、某一侧是纯数字字符串 字符串自动转成数值
4、不能正常比较的结果都是 false
== 和 === 区别 :
== 只比较值是否相等
=== 先 比较类型,再比较值
18、逻辑运算符
运算符 : && 与 || 或 ! 非
表达式 (参与逻辑运算的一般为 布尔类型 ) 3>4 && 6==5 3>4 || 9==9 !true
表达式的值 :
&& (且) : && 两侧都为真 ,结果为true , 否则为 false 3>4 && 6==5 --> false
|| (或) : || 两侧都为假 ,结果为 假 ,否则就为真 3>4 || 9==9 --> true
!true -->false !false--->true
19、条件运算符 (三目运算符)
运算符 : ? :
表达式 : 表达式1 ? 表达式2 : 表达式3 8<7 ? 89:90 10?1:2
表达式的值 :
如果表达式1的结果为真,取 表达式2的值作为整个条件表达式的值 ,否则 取表达式3为整个条件表达式的值
计算机中表示真假的几种情况 (一般用于判断中):
1、非0为真,0为假
2、所有字符串为真 空串为假 "" ""?1:2
3、所有对象为真
4、所有函数为真
5、null 和 undefined 为假
- js函数和运算符
函数是由事件驱动或者它被调用时执行可重复使用的代码块. <script> function myFunction(){ Alert(“hello World!”): } </scri ...
- Js数据类型和运算符
1.数据类型 原始类型:数值 字符串 布尔值: 复杂类型:对象: 数值(number) 特殊的数值:NaN,NaN不等于任何 ...
- js引入,js变量和运算符等
页面级的js不管写在页面的哪里都可以 企业项目开发要求:结构(html),样式(css),行为(js)相分离 不要既写外部js,又写内部js:如果两个都写,则外部js生效 声明多个变量时,每个变量之间 ...
- js规则和运算符
通过“+”号或toString()方法将数值转换成字符串. 通过parseInt()将字符串转换成整型. 通过parseFloat()将字符串转换成浮点型. charAt() 获取字符串特定索引处的字 ...
- openresty开发系列15--lua基础语法4表table和运算符
openresty开发系列15--lua基础语法4表table和运算符 lua中的表table 一)table (表)Table 类型实现了一种抽象的"关联数组".即可用作数组,也 ...
- Python基础0:变量 赋值 表达式和运算符
变量: 前面我们在使用print()输出内容的时候,如果内容很长,后面要再次输出的时候,就需重新在输入一遍. 如果给输出的内容起个简单的别名.这样我们用简短的别名来代替长内容,下次要输出的时候就直接使 ...
- Shell编程基础教程2--变量和运算符
2.变量和运算符 2.1.变量的类型 本地变量:环境变量:变量替换(显示变量):位置变量:标准变量:特殊变量: 2.2.本地变量 本地变量在用户现在的shell生命周期的脚本中使用 在命令行, LOC ...
- Python3基础-表达式和运算符
表达式和运算符 什么是表达式? 1+2*3就是一个表达式,这里的加号和乘号叫做运算符,1.2.3叫做操作数. 1+2*3经过计算后得到的结果是7,我们可以将计算结果存放在一个变量里,result=1+ ...
- js基础笔记
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF- ...
随机推荐
- 第十六篇 make中的路径搜索
在实际的工程项目中,源文件和头文件都会组织成一定的目录结构,这样也便于项目的管理,前述我们分析的makefile,源文件和头文件大都在当前目录,没有路径搜索的问题,下面我们引入今天的演示程序的目录结 ...
- Linux设备树使用(二)
一.设备树与驱动的匹配1.设备树会被/scripts中的dtc可执行程序编译成二进制.dtb文件,之前设备树中的节点信息会以单链表的形式存储在这个.dtb文件中:驱动与设备树中compatible属性 ...
- grandstack 基于graphql&&react&& apollo&& neo4j 的全栈开发工具
grandstack是一个基于graphql&&react&& apollo&& neo4j 的全栈开发工具. 有篇关于graphql 的5个常见问题的 ...
- Understanding Safari Reader
Interesting enough to find out the Reader function in Safari is actually Javascript and there are ma ...
- linux平台下防火墙iptables原理
iptables简单介绍 netfilter/iptables(简称为iptables)组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它能够取代昂贵的商业 ...
- oracle之 变更OS时间对数据库的影响
本文:说明提供了操作系统日期变更对数据库.应用程序数据和作业的影响. 1.它将会影响插入的任何记录,如果涉及到sysdate,则更改日期.2.它还会影响在那个日期运行的任何调度器作业. 如果将系统时间 ...
- 从操作系统rm数据文件后,利用句柄与rman恢复的过程。(已验证)
以下操作代码的流程是配的,但是相应的文件名,啥的 必须改动. 故障现象 数据文件被误删除 具体情况 接到反馈说,数据文件data20120512.dbf被误删除,需要恢复 数据库提示 ERROR ...
- weexpack 使用
weexpack 的github地址:https://github.com/weexteam/weex-pack weex-toolkit: 初始化的项目是针对开发单个 Weex 页面而设计的,也就是 ...
- spring4 知识点
1 bean的 创建 1,直接在配置文件里面写一个带有@Bean注解的方法(返回值就是那个bena对象),(name等于 方法名) 2,使用 FactoryBean 接口(三个方法分别是创建,类型,单 ...
- linux mutt的安装和使用
首先介绍一下mutt这个软件,它是一款基于文字界面的邮件客户端,非常小巧,但功能强大,可以用它来读写,回复保存和删除你的邮件,能在linux命令行模式下收发邮件附件. 我只讲它很小的一部分功能,因为我 ...