Javascript用途,语法特点,难点,调试工具,引入方式,命名规范,变量声明及赋值,数据类型,运算符
JavaScript用来干什么
- 数据的验证
- 将动态的内容写入到网页当中(ajax)
- 对事件做出相应
- 读写html当中的内容
- 检测浏览器
- 创建cookies
- 模拟动画
语法特点
- 基于对象和事件驱动的松散型的解释性语言
- 面向对象开发
- 事件驱动
- 松散型 弱类型
- 解释性语言。由浏览器解释执行
JavaScript的组成部分
- ECMAscript语法
- 数据类型,运算符,流程控制,函数,面向对象
- BOM浏览器对象模型
- DOM文档对象模型
难点
- 语法的松散自由型
- 各个浏览器的兼容
调试工具
- alert('这是一个弹窗');
- document.write('输出到页面中');
- document.write('
我是h6
');
- prompt("提示信息","显示框");
- console.log("输出到控制台");
JavaScript引入方式
- script标签对,嵌入到页面中任意位置
- 超链接或者是重定向的位置
<a href="javascript:alert('重定向')">我是重定向</a> - 事件后面
<div onclick="alert('事件后面')">这是事件</div> - 引入外部js文件
<script src="index.js"></script>
js可以在页面中的任意位置引入,他们是一个整体可以相互联系,相互影响;在引入外部js文件中,不能出现
<script></script>,在页面<script src=""></script>标签中不能出现js代码
JavaScript的命名规范
- 严格区分大小写
- 变量由数字,字母,下划线,$组成,不允许数字开头
- 不能用关键字或保留字命名
- 命名习惯 驼峰命名法 首字母大写
- 命名要有一定意义
- ;语句结束
变量的声明及赋值
- 先声明后赋值
var a;a=1- 声明同时进行赋值
var a=1;- 一次声明多个变量,然后赋值
var a,b,c; a=1;b=2;c=3- 一次性声明多个变量的同时赋值
var a=1,b=2,c=3;
栈区(内存小运行快) 堆区(内存大运行慢) 静态区 代码段
0开头的数字(8进制)
数据类型(2种)
- typeof()检测数据类型,返回值是字符串
初始数据类型:
- undefind
变量声明后没有赋值,默认值undefined - null
typeof的结果是object,表示什么都没有,占位符 - boolean
true false 结果是boolean - number
整型,浮点型;二进制,八进制,十六进制,十进制,科学计数法,特殊值
Number.MAX_VALUE 最大值,
Number.MIN_VALUE 最小值。 - string
用''""包围的值,就是一个字符串
单双引号效率一样;单双引号成对出现;可以相互嵌套,不能交叉嵌套;特殊字符
\b \n \t \r \'' \"" \\ \
引用数据类型
- object
运算符
表达式:运算符和操作数的组合成为表达式
算术运算符(1)
+ - * / %(取余) var++(先运行后自增) ++var(先自增后运行) var-- --var
10%3 余数为1
- %
- 用来取某个数的余数
- 用于取一定范围的值
- 一般不用小数,因为结果不确定
- 四则运算
- 字符串连接,任意的数据类型都可以和字符串连接,连接之后结果是字符串。
12.27
关系运算符(比较运算符)(2)
< > <= >= == === != !==
运算结果是布尔值
== 比较两个数的值是否相等 =不但要比较值是否相等,还比较类型是否相等 false0 true==1
比较规则
- 两个数值比较,正常比较
- 两个字符串进行比较时,比较第一个字符所对应的ASCll
- 数字和字符串在进行比较时,字符串尝试转换成数字进行比较,如果转换不成功返回NAN,整个表达式返回false
- undefined==null
- 数值和布尔值进行比较时,布尔值转化为true,1 false,0
赋值运算符(3)
= += -= *= /= %=
a++ a=a+1 a+=1
逻辑运算符(4)
与and&& 或or|| 非not!
&&
同时为真,结果为真。只要有一个为假,结果就为假
||
只要有一个为真,结果为真。全假,结果为假
!
取反。真-->假 假-->真
- 逻辑运算符可以对任何类型的数据进行运算但是在运算的
时候,可以转换为对应的布尔值 Boolean - Undefined false
- Null false
- Boolean 就是本身的值
- Number 除了0以外都是真的
- String 除了空字符串以外都是真的
- 对象 真的
一元运算符(5)
typeof +(正) -(负) delete new ++ --
- typeof()获取数据类型
- delete删除对象的方法或属性
- new用来创建一个对象
三元运算符(6)
格式:var 变量=布尔值?条件为真的值:条件为假的值
根据表达式的计算结果有条件的为变量赋值
特殊运算符(7)
, (),- 用来一次声明多个变量
()- 在运算的时候有优先级的作用
- 可以让函数运行
Javascript用途,语法特点,难点,调试工具,引入方式,命名规范,变量声明及赋值,数据类型,运算符的更多相关文章
- javascript 变量 命名规范 变量的作用域
原文:javascript 变量 命名规范 变量的作用域 大家好,我是小强老师,今天讲解的是变量 变量 小时候我们学过 这个 应用题 : X+1=2; 问 X 等于几? 答案是 1 对了,很聪 ...
- JavaScript 引入方式 语言规范 语言基础 数据类型 常用方法 数组 if_else 比较运算符 for while 函数 函数的全局变量和局部变量 {Javascript学习}
Javascript学习 JavaScript概述 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript ...
- JavaScript变量声明及赋值
1.变量声明 var a; //声明一个变量 a var b,c,d; //同时申明多个变量时,变量名之间用逗号隔开 console.log(a); //在控制台显示变量a的值,输出为undefine ...
- CSS最基础的语法和三种引入方式
**CSS语法** CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明.选择器通常是您需要改变样式的 HTML 元素. selector {declaration1; declaration ...
- Python 语法特点:注释/编写规则/命名规范
1.注释 1)单行注释 # 2) 多行注释 前后三个单引号或双引号 ‘’‘ ... ''' """ ...""" ...
- JavaScript基础语法资料
JavaScript基础第01天 1 - 编程语言 1.1 编程 编程: 就是让计算机为解决某个问题而使用某种程序设计语言编写程序代码,并最终得到结果的过程. 计算机程序: 就是计算机所执行的一系列的 ...
- python 全栈开发,Day50(Javascript简介,第一个JavaScript代码,数据类型,运算符,数据类型转换,流程控制,百度换肤,显示隐藏)
一.Javascript简介 Web前端有三层: HTML:从语义的角度,描述页面结构 CSS:从审美的角度,描述样式(美化页面) JavaScript:从交互的角度,描述行为(提升用户体验) Jav ...
- 前端JavaScript(1) --Javascript简介,第一个JavaScript代码,数据类型,运算符,数据类型转换,流程控制,百度换肤,显示隐藏
一.Javascript简介 Web前端有三层: HTML:从语义的角度,描述页面结构 CSS:从审美的角度,描述样式(美化页面) JavaScript:从交互的角度,描述行为(提升用户体验) Jav ...
- {前端CSS} 语法 Css的几种引入方式 css选择器 选择器的优先级 CSS属性相关 背景属性 边框 CSS盒子模型 清除浮动 overflow溢出属性 定位(position)z-index
前端CSS CSS介绍 CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素,给HTML设置样式,让它更加美观. 当浏览器读到一个样式表,它就会按照这个样式表来对文 ...
随机推荐
- @hdu - 6427@ Problem B. Beads
目录 @description@ @solution@ @accepted code@ @details@ @description@ 有 m 种不同颜色的珠子,颜色分别为 1~m,每一种颜色的珠子有 ...
- @bzoj - 4382@ [POI2015] Podział naszyjnika
目录 @description@ @solution@ @accepted code@ @details@ @description@ 长度为 n 的一串项链,每颗珠子是 k 种颜色之一. 第 i 颗 ...
- docker + jenkins 自动化部署
公司书架上有本docker的书籍,正好最近事不多就写个demo来玩一玩. DevOps未死,ContainerOps已到 ContainerOps VS DevOps 避免了复杂的环境,应用之间的相互 ...
- 移动端Chrome Inspect调试 (Android通过Chrome Inspect调试WebView的H5)(ios手机safari,chrome调试 windows)(如果inspect的时候,是空白)
ios +chrome调试 引用https://segmentfault.com/a/1190000015428430 iTunes ios-webkit-debug-proxy-1.8-win64- ...
- BraveOS正式版发布,希望大家下载使用
废话不多说,直接贴图才是王道 这里是DOS系统+默认官方(Platform系统) 下载地址:http://pan.baidu.com/s/1eQINwx8 (引导进Platform系统后,默认管理员帐 ...
- iptables单个规则实例
iptables -F? # -F 是清除的意思,作用就是把 FILTRE TABLE 的所有链的规则都清空 iptables -A INPUT -s 172.20.20.1/32 -m state ...
- Array.from()类数组转化为数组的用法
类数组对象转化为数组 let arrayLike = { '0': 'a', '1': 'b', '2': 'c', length: 3 }; let arr = Array.from(arrayLi ...
- CountableThreadPool
Spider剩下的CountableThreadPool 在上一篇的Spider中我们一定注意到了threadpool这个变量,这个变量是Spider中的线程池,具体代码 public class C ...
- vue-lazyload: 想弃坑,但没有找到合适的替代品
vue-lazyload,相信在vue项目中大家都有用到过它,同时也遇到过大大小小的坑.笔者也遇到过这样一个bug,在一个图片列表页面中,总有一定的概率图片的状态为load,导致图片一直加载中...这 ...
- element-ui后台管理系统表单resetFields功能实现
项目中有‘新增’和‘编辑’弹出dialog功能,并且为同一个dialog. html代码: 新增时,这样的样式 编辑时,这样的样式 所以在编辑完关闭dialog后,需要清空表单,一开始简单的使用了el ...