js概念: 运行在浏览器端(客户端)的解释性脚本语言
a.js引擎:执行js代码:从上往下一行一行执行
js的作用: html:结构(骨架) css :表现(美化) js: 行为(动效,轮播图。tab切换,楼层,拖拽,百度搜索,表单验证,登录注册,百度换肤,贪吃蛇)
js的核心: (ECMA:规范js语法W3c:规范html和css) 1、ECMAScript:指定的是js的语法规范 2、BOM:(browser object model )浏览器对象模型,提供了一套操作浏览器的api(打开open和关闭close浏览器窗口,前进后退(go(-1)) ) 3、DOM:(docuemnt object model)文档对象模型,提供了一套操作页面(页面的标签)的api 说白了。bom和dom是通过js的方式来操作页面和浏览器的
2、js的基础语法
1、行内式
a标签的
a标签的 <a href="javascript:js代码;">百度</a>
<a href="javascript:js代码;">百度</a>
非a标签的
<button 行为属性="js代码">按钮</button>
2、内嵌式
书写方式: <script></script>
书写位置:可以在任何位置书写<script></script>,但是不推荐写在最上面,推荐写在最下面
执行顺序:可以有多对script标签,从上往下执行
3、外链
书写方式: <script src="demo.js路径"></ script>
注意:1.在外链式的写法中,script标签内部代码不执行
js注释 注释:多行注释和单行注释 作用:对代码的解释说明 单行注释:ctrl+/ 多行注释:alt+shift+A
js变量
js中的变量:在程序运行过程中,值会发生变化的量,称为变量,在计算机中,变量实际上就是一个容器,存储着值
如何定义变量:
a) 最常用的方式: var x = 20000;//声明一个变量x,同时将20000赋值给x var : 声明变量用的(告诉计算机,x是一个新成员,变量x就可用了)
空格 x : 变量名(类似类名,自己取的,不要瞎写) = : 赋值(将右边的值赋值给左边)将2000赋值给x 20000:代表x变量存储的值
var x:声明变量(开辟空间) a = 10;将10赋值给a,(将空间存储1日)
b)其他方式 var x; //先声明一个变量 x = 20; // 用的时候再进行赋值
同时声明个变量,用的时候再赋值 var a,b,c; a = 20; b = 30; c = 40;
同时声明个变量,有的赋值,有的用的时候再赋值 var x = 10, y = 20 , z ; z = 30; --------------------- var x = 10, y = 20 , z = 40;
js的变量的命名规则和规范 变量命名时的 规则: 1、 组成: 数字,字母,下划线(_ ),美元符号($) 2、 注意:不能以数字开头,不能是关键字(js中具有特定含义的单词。var if for function) var var = 10; 3、严格区分大小写 var Var = 10; 4、汉字也可以作为变量,强烈不推荐
规范: 1、 见名识意: 定义苹果价格 applePrice weight size name height ... 2、 驼峰命名法 多个单词组成,第一个单词全部小写,第二个单词开始,首字母大写 redApplePrice greenApplePrice
js的输出语法 + alert(内容): 作用:彈出内容 + console.log(内容) 作用:在控制台打印内容 + document.write(内容) 作用:在页面输出
内容可以说是数值类型,字符串,true/false,变量 lalert(123)
alert( "123")
alert(true)
alert(false) var x ;//只声明,未赋值,typeof的结果就是undefined
js的数据类型
Number类型:NaN,小数,整数,十进制,八进制,十六进制,二进制string类型:"”或者"" Boolean类型: true和false Undefined类型:只声明,没有赋值var a;
Nul1类型:var x = null;typeof x; //object
检测数据类型typeof xtypeof(x)
两者的区别:typeof("3"+2)检测"3"+2的拼接的结果的类型
两者的区别:typeof "3”+2检测"3"的类型和3求拼接
js数据类型的转换
// 字符串类型转为数值类型:
// 1. Number()
// 1.1 使用:Number(内容)
// 1.2 转换的规则:将内容当成一个整体来进行转换,如果内容是一个数值,
//可以转换成功,如果整体不是数值,转换得到的结果是NaN
// 2. parseInt()
// 2.1 使用:parseInt(内容)
// 2.2 转换规则:从左向右一个一个进行转换,能转换的就保留,转换不成功的就停止转换
// 第一个就转换不了的,直接返回(得到一个结果) NaN
// 2.3 举例子:parseInt("100px")--->100
// 2.3 举例子:parseInt("px100")--->NaN
// 2.4: 注意:只转换整数部分
// 3. parseFloat()
// 3.1 使用:parseInt(内容)
// 3.2 转换规则:从左向右一个一个进行转换,能转换的就保留,转换不成功的就停止转换
// 第一个就转换不了的,直接返回(得到一个结果) NaN
// 3.3 举例子:parseInt("100px")--->100
// 3.3 举例子:parseInt("px100")--->NaN
// 3.4: 注意:可以转换小数