1.基本概念
为什么需要有JavaScript(JS有什么用)
HTML:负责呈现内容
CSS:负责内容呈现的方式
HTML+CSS:实现了静态页面
实际上,我们更多的页面的要求是动态的
比如新浪的动态新闻,热点,聚焦...页面的自动切换。
比如时间也是动态显示的。
还有验证码、注册页面的数据验证...
怎么才能让页面动起来?
答案就是JavaScript。
案例1:
id="time">今天是...
http-equiv="Content-Type" content="text/html; charset=utf-8"/>
p{
color: red;
}
var p1 = document.getElementById("time");
p1.innerHTML = new Data().toString();
实现的效果为:
很明显,这个内容不是HTML提供的,而是由JS动态生成。所以JS
是实现动态页面的,即页面的行为。
案例2:
html>
lang="en">
charset="UTF-8">
#div1{
height: 100px;
width: 100px;
background: skyblue;
margin: 0 auto;
}
这个案例是用定时器动态去改变元素的宽度,从而实现动态效果。
怎么用?
两种方式:
(1)内部引用,使用
JavaScript的备注方式:1、单行注释 //.....
2、多行注释 /*...*/
Js是一种解释型语言。
计算机语言分为两种,编译型语言,java,C,C++,C#,PHP...
解释性语言:JS、CSS等...
程序员使用高级语言汇编程序,但是程序最终是由计算机去执行,计算机只能执行机器语言(二进制),那么这个过程就必然有一个从高级语言到机器语言的“翻译”过程。
有两种“翻译”方式:
(1)编译:将代码整体翻译成机器代码,如果有错误的话则停止翻译,全部成功翻译完才能执行;
(2)解释:将代码翻译一条马上执行一条,如果遇到错误则停止。
WWH:what、why、how
常规数据类型与变量
数据的几个属性:名称,值,类型
名称是月销量,值是47,数值
名称是大小,值是190×100mm,字符
名称是是否包邮:值是“是”,布尔类型
2.1 常规数据类型
名字:xxx 字符串 string
身高:1111 数字 number
体重:1111 数字
性别:男 字符串
单身与否:是 布尔类型boolean
数据判断类型:typeof();
警告提示框:(打印)
为什么要有数据类型?
生活是存在不同的数据类型的,计算机要解决生活问题,那么他就和生活中的数据类型产生了映射,所以有了数据类型。
数值类型的表现形式:
十进制:23,3.14;
八进制:023;(19)
十六进制:0x23;(35)
科学技术法:3e2;(3×105),3.5e-2(3.5×10-2);
2.2 变量
为什么要变量?
因为生活中一些数据不是一成不变的,他的值会改变,所以js里面有了变量今和他相对应。
变量:
var:variable的缩写,变量的意思,声明一个变量。
命名规则:
1.关键字不能用。
2.一般情况下只用英文开头,也可以是$或者_,但是不建议使用。
3.不能使用数字开头,因为和八进制十六进制冲突。
错误命名示范:var 1name = "xx";
命名的原则:
见名思意:
(1)尽量使用英文单词或者组合,或者专业名词
weight color
fileName(驼峰命名法)
(2)尽量不要使用拼音
变量的值:
变量的类型是由变量的值来决定的。
系统会为不同的类型分配不同的大小来存储数据。
如果是布尔类型就分配一个字节的大小来存储
如果是数字和字符串,那么根据他的大小和长度来分配字节数来存储。
Js是弱类型语言,所以的类型的变量都用var来声明。
Js是动态类型的语言,变量的类型根据值的变化而变化,不会出错。
变量的本质就是一个内存单元。
var weight = 65;
weight = weight + 5;
把名为weight的内存单元中的值65拿出来,之后和5做减法运算,然后把得到的结果再放回到名字名为weight的内存单元中。
Js语言特点:
更加高级,不严谨
变量不声明就可以用。
使用严谨的格式,就必须先定义变量才能使用变量。
"use strict";
weight = "中等";
alert(weight);
name这个命名是特殊的,使用name来给变量起名字时,他不会报错。
weight1 = "中等";
weightl = "123";
alert(weight1);
这里的weightl不是预期的“中等”而是“123”原因是拼写错误,而且不会报错。
如果使用严格模式,明显可以看到第二个变量拼写错误。
2.2对象类型
对象在js当中对应的是object
狗
名字:“藏藏”
品种:“藏獒”
颜色:“颜色”
性别:“雄”
年龄:“3”
是否婚配:否。
定义一个对象:
var dog = {name:"藏藏",type:"藏獒",color:"花的",
sex:"雄",age:"3",marry:false}
使用new Object()定义一个对象类型的变量。
var dog = new Object();
dog.name = "藏獒";
dog.age = 3;
dog.marry = false;
为什么有对象?
和为什么有数据类型是一样的,就是生活中处处都是对象,所以js中有这种对象类型。
如何使用对象里面的属性?
使用对象名+ . +对象属性名
alert(typeof (dog.name));