js概念:运行在浏览器(客户端)的解释性(一行一行得执行)脚本语言。
js引擎:执行js代码:从上往下一行一行执行,出现问题则终止。
js的作用:
Html:结构,骨架
css:表现,美化
js:行为 动效(轮播图。tab切换。楼层。拖拽,百度搜索,表单验证)
js的核心:
<ECMA:规范JS语法>
<w3c:规范html和css>
1.ECAM-Script:制定了js的语法规范
2.BOM: (browser object model)浏览器对象模型,提供了一套操作浏览器的API如:打开关闭浏览器窗口,前进go1后退(go-1)
3.dom:(docuement object madel)文档对象模型,提供了一套操作页面(body里的东西的API。
言而总之,BOM与DOM都是通过JS 来操作页面。
2.1.js代码的书写
1.行内式
a标签的<a href="javascript:js代码;">百度</a>
非a标签的,<button 行为属性="js代码">按钮</button>
需要通过事件来触发,如onclick,当点击时触发。
2.内嵌式
书写方式:<script></script>
书写位置:可以在任何位置书写JS代码(不推荐写在顶部,因为加载时从上往下,所以推荐写在最下面,可以有多对标签,有顺序的加载,不覆盖)
3.外链式
书写方式:<script src="demo.js"></script>
注意:1.在外链式的引入中,标签内的样式忽略。
2.demo.js中直接写js代码。
2.2JS的注释
注释:多行注释和单行注释
作用:对代码的解释说明
单行注释:多行注释
2.3js变量
变量:在程序中保存数据的一个容器!
如何定义变量
a)最常用的方式:
var x = 20000;声明一个变量,同时给x赋值20000
var 声明变量用的(告诉计算机,x是一个新的变量)
b)其他方式
var x;声明一个变量
x=20;声明后在进行赋值
var a,b,c;声明多个变量
a=20;
b=20:
声明多个变量然后再在进行赋值。
var a=20,b,v;也可以在声明的时候加入赋值
2.4变量的输出语法
alert(内容)
作用:弹出内容
console.log(内容)
作用:在控制台输出内容
document.write(内容)
作用:在页面内输出
2.5JS的命名规则和规范
规则:
1.组成部分:数字、字母、下划线、¥
2.不得以数字开头
3.不可以是关键字(var if switch care for while do)或保留字
4.严格区分大小写
规范
1.驼峰命名法 例:appplePrice redApplePrice
2.见名知意:
3.不推荐使用中文
2.6JS的数据类型以及类型转换
1.数值类型=number
一切数组都是数值类型(包括二进制、十六进制、八进制)
NaN 不是一个数字
-整数
-小数
-科学计数法 10e5
-十进制 八进制 十六进制 二进制
-NaN(not a number)不是数字
2.字符串类型=string
被引号包括的内容都是字符串
-”123“
-‘123’
3.布尔类型=boolean
只有两个(true和false)
-true
-false
4.null类型=空类型
仅有一个null
5.undefined类型=未定义类型
只有一个undefined,表示没有值
只声明未赋值:var a;
-声明变量可以赋值为 undefined
2.7数据类型
检测要配合输出进行操作,如:console.log(typeof('123'))
语法:
typeof(要检测的值)
typeof要检测的值
返回值(所出现的结果)
1.某一种数据类型(number string undefined object boolean)
2.一字符串的形式返回
isNaN:(is not number)检测一个值是不是数字,如果是,输出为 false
var n1 = 100; console.log(isNaN(n1)); //=> false
var s1 = 'Jack' console.log(isNaN(s1)); //=> true
2.8数据类型的转换
数据类型之间的转换,各种数据类型之间的转换
2.8.1如把其他数据类型转成数值:
方法一:
number(变量)
可以把一个变量强制转换位数值
可以转换位小数,会保留小数
可以转换布尔值
遇到不可以转换的会返回NaN
方法二:
parseInt(变量)
从第一位开始检查,是数字就转换,知道第一个不是数字的内容,直到一个不是数字的内容。开头如果不是数字直接返回NaN。
不认识小数点,只能保留整数
方法三:
parseFloat(变量)
从第一位开始检查,是数字就转换,知道第一个不是数字的内容,开头就不是数字,直接放回NaN
区别:认识一次小数点
2.8.2其他数据类型转成字符串
-变量.toString()
-string(变量)
-使用+运算
2.8.3其他数据类型转布尔
-Boolean(变量)在js中只有‘’、0、null、NaN这些事false,其余都是啥true.
1.+
只有符号两遍都是数字才会进行加法运算
只要符号任意一边是字符串类型,就会进行字符串拼接
2.-
会执行乘法运算
会自动把两遍的值转化成数字在进行运算
3.*
会执行乘法运算
会自动把两遍的值转化成数字在进行运算
4./
会进行除法运算
会自动把两遍的值转化成数字在进行运算
5.%
会进行取余计算
会自动把两遍的值转化成数字在进行运算
1.=
就是赋值操作,把等号右边的值赋给左边的变量
2.+=
var a = 10;
a += 10;
console.log(a);
//值为20
a += 10等价于a= a + 10
3.-=
var a = 10;
a -=10;
console.log(a);//值为0
a -=10等价于a = a - 10;
4.*=
a =10等价于a = a 10;
5./=
a /=10等价于a = a / 10;
6.%=
a %=10等价于a = a % 10;
1.==
比较两边的值是否相等,不管数据类型
1=='1' 得到true
2.===
绝对等于号
比较两边的值是否完全相等,包括数据类型
1=='1' 得到FALSE
3.!=
不等于 比较两边的值是否相等,相等时得到FALSE
1!='1' 得到FALSE
4.!==
比较两边的值是否完全不相等,相等的时候得到FALSE
1!=='1'得到 TRUE
5.>=
比较两边的值是否左边大于等于右边
6.<=
比较两边的值是否左边小于右边
注:注意运算符的书写顺序
7.>
8.<
1.&&
并且:左右两侧需要同时为true才可生效
2.||
或:左右两次只需要一个为true即可生效
3.!
取反运算,与本身的值相反
1.++
进行自增运算
分为前置++及后置++
var a=10;
前置++如,++a,输出为11;
后置++如,a++,输出为a 然后再把a的值变成11
2.--
进行自减运算
用法与自加相同
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。