一、认识js
js概念:运行在浏览器端(客户端)的解释性脚本语言
(js引擎:执行js代码:从上往下一行一行执行)
js的作用:
html:结构(骨架)
css:表现(美化)
js:行为(动效,轮播图。tab切换,楼层、拖拽。百度搜索,表单验证,登录注册,百度换肤等等...)
js的核心:
(ECMA:规范js语法 W3c:规范html和css)
1.ECMAScript:制订的是js的语法规范
2.BOM:(borwser object model)浏览器对象模型,提供了一套操作浏览器的api(打开open和关闭close浏览器窗口,前进后退(go(-1))
3.DOM:(docuemnt object model)文档对象模型,提供了一套操作页面(页面的标签)的api
说白了。bom和dom是通过js的方式来操作页面和浏览器的
二、js的基础语法
1.js代码的书写
js代码的书写
1.行内式 (极度不推荐)
a标签的 <a href="javascript:js代码;">百度</a>
非a标签的 <buttor 行为属性=“js代码”>按钮</button>
2.内嵌式 (不推荐)
书写方式:<script></script>
书写位置:可以在任何位置书写<script></sctipt>,但是不推荐写在最上面,推荐写在最下面
执行顺序:可以有多个script标签,从上往下执行
3.外链 (推荐)
书写方式:<script src="demo.js"></script>
注意:1.在外链式的写法中,script标签内不代码不执行
2.demo.js 中直接写js代码
2.js注释
注释:多行注释和单行注释
作用:对代码的解释说明
单行注释:ctrl+/
多行注释:alt+shift+A
2.1 js变量
如何定义变量:
最长用的方式:
var x=20000;//声明一个变量x,同时将20000赋值给x
var:声明变量用的(告诉计算机,x是一个新成员,变量x就可用了)
空格
x:变量名(类似类名,自己取的,不要瞎写)
=:赋值(将右边的天赋值给左边)将20000赋值给x
其他方式: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;
3、输出语法
输出方式:
1.alert(内容):弹出内容(弹出框)
注意:内容:直接写数字(小数整数都可以)
文本(单引号或者双引号引起来的)
变量
2.console.log(内容):控制台输出
注意:内容:直接写数字(小鼠整数都可以)
文本(单引号或者双引号引起来的)
变量
3.document.write(内容) 页面输出
注意:内容:直接写数字(小数整数都可以)
文本(单引号或者双引号引起来的)
变量
支持标签的
4.js的命名规则和规范
规则:(规则是必须遵守的,不遵守就报错)
1.组成部分:数字,字母,下划线,美化符号$
2.不能是数字开头
3.不能是关键字和保留字(现在还不是关键字,后期可能会变成关键字)
4.严格区分大小写
规范:(约定俗称的需要大家共同遵守)
1.驼峰命名法 applePrice(从第二个单词开始,单词的后字母大写,第一个单词全部小写)
2.见名识意(applePrice:苹果的价格)
name
age
sex
weight
height
3.不推荐中文(支持中文)
5.js的数据类型及类型转换
1.数据类型(numbler):
一切数字都是数值类型(包括二进制,十进制,十六进制等)
NaN(not a number),一个非数字
2.字符串类型(string)
被引号包裹的所有内容(可以是单引号也可以是双引号)
3.布尔类型(boolean)
只有两个(true 或者 false)
4.null类型(null)
只有一个,就是null,表示空的意思
5.undefined类型(undefined)
只有一个,就是undefined,表示没有值的意思
6.数据类型
两大类:
基本数据类型:
Number类型 数据类型
String类型 字符串类型
Boolean类型 布尔类型
null类型 空类型
undefined类型 未定义类型
引用数据类型:(了解)
Object
Number类型 数值类型
1.整数
2.小数
3.10e5(科学计数法)10*10的5次方
4.十进制 八进制 十六进制 二进制
5.NaN(not a number):不是数字
String类型 字符串类型
1.单引号或者双引号引起来“123” 'abc'
2.一段文本
Boolean类型 布尔类型
1.true:真,计算机会把true存储成1
2.false:假,计算机会把false存储为0
undefined类型 未定义类型
1.只声明,为未赋值var x;
2.声明变量,可以赋值成undefined
null类型,空类型
var x = null;
7.检测数据类型
typeof 关键字来检测
语法:
typeof(要检测的值)
typeof 要检测的值
返回值(结果):
1.哪种数据类型(number,string,undefined,object,booleam)
2.一字符串的形式返回
8.数据类型的转换
数据类型之间的转换,比如数字转成字符串,字符串转成布尔,布尔转成数字
其他数据类型转成数据:
Number(变量)
可以把一个变量强制转换成数值类型
可以转换小数,会保留小数
可以转换为布尔值
遇到不可以转换的都会返回NaN
parselnt(变量)
从第一位开始检查,是数字就转换,直到一个不是数字的内容
开头就不是数字,那么直接返回NaN
不认识小数,值能保留整数
parseFloat(变量)
从第一位开始检查,是数字就转换,直到一个不是数字的内容
开头就不是数字,那么直接返回NaN
认识一次小点
其他数据类型转换成字符串:
1.变量.toString()
2.String(变量)
3.使用加发运算
其他数据类型转布尔值:
1.Boolean(变量)在js中,只有“、0,null、nudefined、NAN”