文章目录
1. JS概述
前端工程师:html,css,js
后端工程师:java,数据库
全栈工程师:前端+后端
2. html、css和js三者之间的关系
如果把html比如做是一个人,那么css就是这个人的衣服、皮肤、外貌,但是一个人只有身体和外貌相当于是一个植物人,不能对外界的刺激做出反应。但是有了js之后,这个人就变成活人了,可以对外界的刺激做出反应。
3. js的历史
js全称javascript,是1995年网景公司推出的一门用于浏览器的编程语言。是由一位叫布兰登.艾奇的歪果仁设计出来的。当时js这门语言仅仅用了10天就被设计出来了。由于当时时间短,任务重,js这门语言被设计出来的时候存在了很多的缺陷,js这门语言刚设计出来的时候不叫javascript,叫livescript,当时为了蹭java的热度或者说网景公司的高层是java的铁粉,后来改名javascript。除此之外,js和java的关系就像老婆和老婆饼,雷锋和雷峰塔,菠萝和菠萝蜜。
4. js是什么
js全称javascript,是一种基于对象和事件驱动的具有安全性能的脚本语言。
基于对象:面向对象有三大特性:封装、继承、多态。js这门语言中没有继承,从而无法谈及到多态。但是js本身提供了很多丰富的对象供开发者使用,所以说js是基于对象的。
**事件驱动:**事件指的是用户通过鼠标和键盘对网页做出的动作,驱动指的网页对你做出动作进行的回应。
**安全性能:**这里的安全指的是操作安全,js只能活在浏览器里面,不能直接访问你的操作系统和读写磁盘,从而不能用来制造病毒或木马。
**脚本语言:**不用编译就能执行的语言。比如js就是一门脚本语言无需编译,由浏览器直接解释执行。
javascript与java的不同:
1.Java代码必须编译才能执行,而JavaScript不需编译,只需由浏览器解释执行;
2.Java和JavaScript虽然都可以在服务器与客户端执行,但Java多运行于服务器,
而JavaScript多用于客户端【客户端指的就是浏览器】;
3.JavaScrip是弱类型,而Java是强类型。
强类型是在编译的时候就确定数据的类型,在执行时类型不能更改,而弱类型在执行的时候才会确定类型.
JavaScript 是一种弱类型(或称动态类型)语言,即变量的类型是不确定的。
5. js的作用
实现动态的网页效果(网页特效)
表单验证
提高用户的体验度
响应事件
小游戏(俄罗斯方块、推箱子、贪吃蛇、五子棋)的制作设计
6. js的三种使用方式
6.1 行内js
在html元素中绑定事件直接写js代码
<html>
<head>
<title></title>
</head>
<body>
<div style="" onclick="alert('我是一个div')"></div>
</body>
</html>
6.2 内部js
在html网页中任意位置中加入标签
<html>
<head>
<script>
alert("警告窗口弹出");
document.write("输出到网页");
</script>>
<title></title>
</head>
<body>
</body>
</html>
6.3 外部js
js代码也可以写为单独的js文件,js文件的后缀名为.js ,引入外部的js文件使用script标签中的src属性。
<html>
<head>
<script src="js外部引用.js"></script>
<title></title>
</head>
<body>
</body>
</html>
注意:
一个网页中可以包含任意数量的script标签,而且不限位置,一般为了规范方便,我们会把script标签写在head标签内。
js文件的后缀名是.js,我们可以直接在来导入js文件,哪个script标签在上,就先执行哪个script标签
7. js三种输出方式
js可以通过不同的方式来输出数据:
使用 alert()方法弹出警告框输出内容。
使用 document.write() 方法将内容输出到网页中
使用 console.log() 方法将内容输出到浏览器的控制台
8. js注释
注释的作用是为了增强代码的可读性或者阻止代码运行。
// 单行注释
/* */ 多行注释
9. 定义变量
在java中定义变量:数据类型 变量名 = 值;
在js中定义变量都是通过var来定义的格式
var 变量名 = 值;
命名规则:
字母,数字,下划线和$符号组成,不能以数字开头,不能是系统关键字,严格区分大小写,理论上没有长度限制,驼峰命名法(小驼峰和大驼峰),见名识意
注意:js代码中的符号一般使用英文半角的符号,每行js代码末尾的分号可加可不加,为了养成良好的编程习惯建议加上
10. js数据类型
基本数据类型
字符串(string)
数值(number)
布尔(boolean)
复合数据类型
数组(array)
对象(object)
特殊数据类型
空 (null)
未定义(undefined)(undefind指的是未定义数据类型)
注意:未定义数据类型将会得到结果undefind,那么未定义变量,程序将会报错
11. js运算符
特殊运算符:
. 用于属性和方法的调用
[ ] 用于数组下标或对象属性
, 多个变量或参数的间隔
?: 条件运算符|三目运算符|三元运算符
**typeof 用于检测数据类型**
算数运算符
+,-,*,/,%,++,–
比较运算符
>=,<=,>,<,(只比较值),!=,**=(**全等于,既比较数据类型又比较值)
逻辑运算符
!(取反),&&(短路与并且),||(短路或或者)
赋值运算符
=,+=,-=,*=,/=,%=
字符串运算符
+ 拼接字符串
12 . 控制语句
-
if else
-
switch case
-
for
-
while
-
do while
-
for(in) 针对于数组的一个遍历
-
break 中断循环
-
continue 结束当前循环,进入下一次循环
13. 函数
java中方法的定义:
修饰符 返回值类型 方法名(数据类型 参数名,…){方法体}
js函数的定义:
function 函数名(参数名,…){函数体}
注意事项 |
---|
1. 函数中的代码只有在调用函数的时候才会执行 2. 参数之间使用,间隔而且这时候参数不需要定义参数类型 3. 在js中不存在函数的重载,可以在函数定义的时候定义足够多的参数,但是在调用的时候需要传几个参数就可以传几个参数 4. 函数不需要有返回值类型,如果需要返回值直接在最后一行return即可 |
14. 全局变量和局部变量
在函数内部定义的变量叫做局部变量,在函数外部定义的变量叫做全局变量
在函数内部定义的变量在不写var的情况下默认为全局变量
行 2. 参数之间使用,间隔而且这时候参数不需要定义参数类型 3. 在js中不存在函数的重载,可以在函数定义的时候定义足够多的参数,但是在调用的时候需要传几个参数就可以传几个参数 4. 函数不需要有返回值类型,如果需要返回值直接在最后一行return即可 |
14. 全局变量和局部变量
在函数内部定义的变量叫做局部变量,在函数外部定义的变量叫做全局变量
在函数内部定义的变量在不写var的情况下默认为全局变量