js便签
是在script标签中写js代码,
javascript是什么?
是脚本语言,解释型语言,动态类型,是基于对象的。
1.编程语言:指计算机能接受和处理,具有一定语法规则的语言
2.脚本语言.直接解释执行,缩短了编写-编译-链接-运行过程而创建的计算机语言。
3.解释性语言:解释执行不需要编译过程,直接由解释器(js引擎)解析并执行。
4.动态类型语言:动态类型语言的变量类型要到程序运行的时候,变量被赋予某个值才确定。
5.基于对象语言:不是一门面向对象的对象,只是部分具备一些面向对象的特性
javascript的组成
1.ECMAscript:定义了js的语法,变量数据类型、运算、流程控制
2.DOM:document object model 文档对象模型
3.BOM:browser object model 浏览器对象模型
javascript能做什么
1.动态效果:轮播图、显示隐藏、返回顶部、tab切换。
2.登录注册:获取验证码、搜索。
3.node js:运行在服务端的js
4.与app交互:uniapp,调用摄像头、蓝牙等
等等
变量
什么事变量?
是计算机内存储数据的标识符,根据变量名可以获取到内存中存储的数据
为什么使用变量?
1.为存储数据
2.改变数据
变量的声明: 关键字var a
变量的初始化 a= 10
浏览器对象: window
浏览器控制台属性:console 本身也是对象
打印信息的方法 log()
语法:对象.属性 /对象.方法()
变量的声明且初始化:var a = 10;
变量的命名规则和规范
规则:必须遵守,不遵守就会报错
1.由字母、数字、下划线和shift+4 组成,不能以数字开头。
2.不能是保留字和关键字;
3.区分大小写。
规范:建议遵守,不遵守不会报错。
1.变量名必须有意义
2.遵循驼峰命名发
数据类型:
1基本数据类型
Number 数字类型
string 字符串
Boolean 布尔类型
undefined 未定义
null 空
2复杂数据类型/引用数据类型
数字类型:
1.十六进制:以0x开头,后面跟十六进制
2.八进制:以0开头,后面跟八进制
3.浮点数
转化为数字类型:
Number()
ParseInt():遇到第一个小数点结束,如果第一个字符不是数字,返回NaN。取整
ParseFloat():遇到第一个不是数字结束或者遇到第二个小数点结束。去小数
转化为字符串类型:
toString()
String():特殊的转化方式,可以转化undefined和null
转化为布尔类型:
Boolean()
0 ' ' null undefined NaN会转换成false,其它都会转换成true
JavaScript运算
(1)、算术运算符
+ - * / %
(2)、一元运算符
++ --
一元运算符:只有一个操作数的运算符
5 + 6 两个操作数的运算符是二元运算符
++ 自身加1,-- 自身减1
前置++ 先将自身的值自增1,再将自增后的值赋值给变量
var num1 = 5;++ num1; var num2 = 6;console.log(num1 + ++ num2);
后置++ 先将自身的值赋值给变量,然后再自增1
var num1 = 5;num1 ++; var num2 = 6 console.log(num1 + num2 ++);
总结:
前置++: 参与运算输出
后置++:运算完毕输出
逻辑运算符(布尔运算符)
&& 与 两个操作数同时为true,结果为true,否则都是false
|| 或 两个操作数有一个为true,结果为true,否则为false
! 非 取反
关系运算符(比较运算符)
< > >= <= == != === !==
==与===的区别:==只进行值得比较,===类型和值同时相等,则相等
null代表的是空指针对象,undefined代表的是未定义,所以null与undefined与任何值都不相等(==),但null与undefined相等,即null==undefined返回结果为true。undefined值是派生自null值的。
字符串大小的比较:
如果两个字符串中都是全数字,只需比较两个首字符串数字的大小即可。即:“50”>”8”返回结果为false
如果等号两侧有一个是数字类型,则将字符串转化为数字再进行比较。即:”50”>8返回结果为true
赋值运算符
= += -= *= /= %=
num += 5; //相当于 num = num + 5;
运算符的优先级
优先级从高到底如下:
括号>点运算符>一元运算符> 算数运算符 >关系运算符>逻辑运算符 >赋值运算符