1.JavaScript?
用于网页和用户之间的交互,比如提交的时候,进行用户名是否为空的判断。
2.document?
document.write("Hello Javascript");
3.script标签?
4.javascript顺序执行?
5.使用外部js文件?
6.注释?
单行注释
//单行注释
多行注释
/*多行注释*/
7.变量?
使用var声明一个变量
不使用var
变量命名
命名规则和java差不多
可以使用
开头可以用 _$和字母
其他部分可以用 $ _ 字母或者数字
8.调试?
alert进行调试
console.log()
9.基本数据类型?
undefined 声明了但未赋值
Boolean 布尔
Number 数字
String 字符串
var 动态类型
typeof 变量类型判断
null 空对象/对象不存在
10.伪对象?
11.转换为字符串?
toString
12.数字转字符串?
toString()//十进制
toString(2)//二进制
toString(8)//8进制
toString(16)//16进制
13.转换为数字?
parseInt()
parseFloat()
14.转换为Boolean?
使用内置函数Boolean() 转换为Boolean值
当转换字符串时:
非空即为true
当转换数字时:
非0即为true
当转换对象时:
非null即为true
15.Number()和parseInt()的区别?
Number()和parseInt()一样,都可以用来进行数字的转换
区别在于,当转换的内容包含非数字的时候,Number() 会返回NaN(Not a Number)
parseInt() 要看情况,如果以数字开头,就会返回开头的合法数字部分,如果以非数字开头,则返回NaN
16.String()和toString()的区别?
String()和toString()一样都会返回字符串,区别在于对null的处理
String()会返回字符串"null"
toString() 就会报错,无法执行
17.函数?
function关键字用于定义一个函数
print即函数的名称
()表示参数列表,像这样就指没有参数
{ 表示函数开始
} 表示函数结束
光有函数的定义,还不够,它不会自动执行,还需要进行第5行的调用
18.带参数的函数?
19.带返回值的函数?
return
20.参数的作用域?
21.全局变量的作用域?
22.事件?
23.算数运算?
基本算数运算符:+、-、*、/、%
自增自减:++、--
如果 ++放在 前面 ,就是 先运算,后取值 。
如果 ++放在 后面 ,就是 先取值,后运算。
赋值:=、+=、-=、*=、/=、%=
+运算符的多态:+
24、逻辑运算?
基本逻辑运算符:==、!=、>、>=、<、<=
绝对等,绝对不等于:===、!==
三目运算符:?:
25.条件语句?
if 条件成立时执行
else 条件不成立时执行
else if 多条件判断 - else if
switch 多条件判断 - switch
26.循环语句?
for 循环语句
while 循环语句
do-while 循环语句,至少执行一次
forEach 增强型循环语句
continue 继续下一次循环
break
27.错误处理?
调用不存在的函数
try catch
28.数字?
new Number 创建一个数字对象
属性MIN_VALUE
属性MAX_VALUE 最小值 最大值
属性NaN 表示不是数字
方法toFixed 返回一个数字的小数表达
方法toExponential 返回一个数字的科学计数法表达
方法valueOf 返回一个数字对象的基本数字类型
29.字符串?
new String() 创建字符串对象
属性
length 字符串长度
方法
返回指定位置的字符
charAt charCodeAt
字符串拼接
concat
子字符串出现的位置
indexOf lastIndexOf
比较两段字符串是否相同
localeCompare
截取一段子字符串
substring
根据分隔符,把字符串转换为数组
split
替换子字符串
replace
返回基本类型
charAt
concat
substring
30.数组?
new Array 创建数组对象
属性 length 数组长度
for
for in 遍历一个数组
方法 concat 连接数组
方法 join 通过指定分隔符,返回一个数组的字符串表达
方法 push pop 分别在最后的位置插入数据和获取数据(获取后删除)
方法 unshift shift 分别在最开始的位置插入数据和获取数据(获取后删除)
方法 sort 对数组的内容进行排序
方法 sort(comparator) 自定义排序算法
31.日期?
new Date 创建日期对象
getFullYear
getMonth
getDate 年/月/日
getHours
getMinutes
getSeconds
getMilliseconds 时:分:秒:毫秒
getDay 一周的第几天
getTime 经历的毫秒数
setFullYear
setMonth
setDate
setHours
setMinutes
setSeconds 修改日期和时间
32.Math?
属性E PI 自然对数和圆周率
方法 abs 绝对值
方法 min max 最小最大
方法 pow 求幂
方法 round 四舍五入
方法 random 随机数 //魔幻数字47
33.自定义对象?
通过new Object创建对象
通过function设计一个对象
为已经存在的对象,增加新的方法
34.window?
文档显示区域宽度:
window.innerWidth
文档显示区域高度:
window.innerHeight
外部窗体的宽度:
window.outerWidth
外部窗体的高度:
window.outerWidth
35.Navigator?
打印浏览器相关信息
<script type="text/javascript">
document.write("<p>浏览器产品名称:");
document.write(navigator.appName + "</p>");
document.write("<p>浏览器版本号:");
document.write(navigator.appVersion + "</p>");
document.write("<p>浏览器内部代码:");
document.write(navigator.appCodeName + "</p>");
document.write("<p>操作系统:");
document.write(navigator.platform + "</p>");
document.write("<p>是否启用Cookies:");
document.write(navigator.cookieEnabled + "</p>");
document.write("<p>浏览器的用户代理报头:");
document.write(navigator.userAgent + "</p>");
</script>
36.Screen?
<html>
<body>
<script type="text/javascript">
document.write("用户的屏幕分辨率: ")
document.write(screen.width + "*" + screen.height)
document.write("<br />")
document.write("可用区域大小: ")
document.write(screen.availWidth + "*" + screen.availHeight)
document.write("<br />")
</script>
</body>
</html>
37.History?
返回上一次的访问
<script>
function goBack()
{
history.back();
}
</script>
<button onclick="goBack()">返回</button>
返回上上次的访问
<script>
function goBack()
{
history.go(-2); //-1表示上次,-2表示上上次,以次类推
}
</script>
<button onclick="goBack()">返回上上次</button>
38.Location?
刷新当前页面function refresh(){location.reload();}
<span>当前时间:</span>
<script>
var d = new Date();
document.write(d.getHours());
document.write(":");
document.write(d.getMinutes());
document.write(":");
document.write(d.getSeconds());
document.write(":");
document.write(d.getMilliseconds());
function refresh(){
location.reload();
}
</script>
<br>
<button onclick="refresh()">刷新当前页面</button>
双击选中所有代码
跳转到另一个页面
function jump(){
//方法1
//location="/";
//方法2
location.assign("/");
}
Location的其他属性
协议 location.protocol:https:
主机名 location.hostname:how2j.cn
端口号 (默认是80,没有即表示80端口)location.port:
主机加端口号 location.host: how2j.cn
访问的路径 location.pathname: /k/javascript/javascript-bom-location/451.html
锚点 location.hash:
参数列表 location.search:
39.弹出窗口?
alert 警告框
confirm 确认框
prompt 输入框
40.计时器?
setTimeout 只执行一次
setInterval 不停地重复执行
clearInterval 终止重复执行
document.write() 不要在setInterval调用的函数中使用document.write();