前端 javascript
---恢复内容开始---
JavaScript
JavaScript:是一门编译型的语言,比python语言还要弱类型的语言
JavaScript 分为三个部分:Ecmascript、dom、bom
Ecmascript: 核心部分
dom: 控制整个网页,也就是文档
bom: 浏览器的文档模型
浏览器只能够解释: html、 css 、javascript
JavaScript的引用方法
直接将代码写入script标签里
使用script标签下的src属性直接引入写好的js文件。
JavaScript语言的使用
在js中//是单行注释
/* */是多行注释
alert:打印,在执行代码时,就会打印到弹出窗口上面。
var: 声明一个变量,在定义变量前,必须使用var声明这些变量开辟出相应的内存空间进行赋值,可以同时声明多个变量,用逗号分开。
在js中默认换行符是一条语句的结束,还可以使用 ‘;’分一条语句的结束符
在js中声明变量没有赋值默认是undefined.
命名规范:见名知意,建议前面加上一个数据类型的首字母 其它的和python定义变量是一样的

什么是常量: 定义不变的量
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
/* function sayHello(){
var hellostr='你好';
document.write(hellostr);
}
sayHello();*/
var a=10,b= 3,c;
console.log(a,b,c)
</script>
</body>
</html>
js的数据类型
基本数据类型
number:数据类型
string:字符串类型
boolean:布尔类型
undefined:只声明并没有赋值的变量,只有一个值:undefined
引用数据类型
object:栈的数据类型。也包含了一些特殊的数据类型,非基础数据类型都属于object数据类型

console.log: 打印,将代码在控制台上面打印出来
typeof: 查看数据类型
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
var a=10;
console.log(a,typeof a)
var e=[11,22,33,44],f=(99,88,77,66)
console.log(e,typeof e)
console.log(f,typeof f )
</script>
</body>
</html>
js中运算符
计算运算符: + - * / % ++ --
++:自加1,只能够加1 使用方法是:变量++ 和++变量,它们的区别在于变量++是先赋值后计算;而++变量是先计算后赋值
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
var a=10;
ret=a++;
console.log(ret,a);
var b=10;
ret=++b;
console.log(ret,b);
</script>
</body>
</html>
比较运算符
> >= < <= != == === !==
==和!=: 比较时数据类型不同的话,js会自动给数据类型转换
=== 和!== :全等于和不全等于。 比较时,js内部不做任何转换
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
console.log(5==='5');
console.log(5!=='5');
console.log(5=='5');
console.log(5!='5');
</script>
</body>
</html>
逻辑运算符: && 与|| 或!非
赋值运算符:= += -= *= /=
字符串运算符:+ 连接,两边操作数有一个或两个是字符串就做连接运算,如果没有值就当正号使用
流程控制
if和else判断:
if 单分支格式:
if(条件语句){
执行语句
}
if 双分支格式:
if(条件语句){
执行语句
}
else{
执行语句
}
if 多分支格式:
if(条件语句){
执行语句
}
else if{
执行语句
}
……
else{
执行语句
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
if (2=='2'){
console.log('ok')
}
if (2==='2'){
console.log('对')
}
else{
console.log('错')
}
var a=20;
if(a>20){
console.log('大')
}
else if(a<20){
console.log('小')
}
else{
console.log('对')
}
</script>
</body>
</html>
for循环语句:
遍历循环格式:
for(条件语句){
执行语句
}
条件语句的格式:(var变量=值;判断条件;自加1)
条件循环格式:
for(avr i in 变量){
执行语句
}
length: 计算长度
while循环语句:
while(条件语句){
执行语句
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
a=0
b=0
while (a<10){
b+=a;
a++
}
console.log(b)
</script>
</body>
</html>

switch case语句
switch(表达式){
case条件语句;执行语句break;
case 条件语句;执行语句break;……
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
var a=2;
switch(a){
case 1:alert('星期一');break;
case 2:alert('星期二');break;
case 3:alert('星期三');break;
case 4:alert('星期四');break;
case 5:alert('星期五');break;
}
</script>
</body>
</html> default:如果输入的值与case后面的值对不上的话,就会执行下面的语句
函数
函数的定义各调用格式
function 函数名(形参){
函数体
}
函数名(实参)
可以在当前文件里的script标签里的任意地方调用这个函数
如果实参少于形参时默认返回NaN,NaN是一个数据,如果数字没有转换字符串成功的话就会出现
argument对象,将传入函数的参数值打包起来。
函数如果没有返回值的话默认返回undefined
匿名函数:
什么叫做匿名函数:没有名字的函数执行一次就会被回收
匿名函数的定义和调用
(function 函数名(形参){
函数体
})(实参)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
function func(x,y,z){
return x+y+z;
}
console.log(func(3,5,11)); (function(x,y){
console.log(x+y)
})(1,4)
</script>
</body>
</html>
js的执行顺序是将所有的代码先编译一遍,然后在执行
前端 javascript的更多相关文章
- 前端JavaScript规范
前端JavaScript规范 http://www.imooc.com/article/1402 http://greengerong.com/blog/2015/05/09/qian-duan-ja ...
- 实例演示 kino.razor (前端 Javascript 模板工具,Razor 风格)的使用
前言 对于习惯了 ASP.NET MVC Razor 模板引擎的人来说,比如我,一直在寻找前端 Javascript 端的 Razor 模板工具.这之前,我也了解到很多Javascript 端的模板工 ...
- 在C#后端处理一些结果然传给前端Javascript或是jQuery
在C#后端处理一些结果然传给前端Javascript或是jQuery,以前Insus.NET有做过一个例子<把CS值传给JS使用 >http://www.cnblogs.com/insus ...
- 前端javascript模板
doT.js——前端javascript模板引擎问题备忘录 我手里维护的一个项目,遇到一个问题:原项目的开发人员在Javascript中,大量的拼接HTML,导致代码极丑,极难维护.他们怎么能够忍受的 ...
- Web前端-JavaScript基础教程上
Web前端-JavaScript基础教程 将放入菜单栏中,便于阅读! JavaScript是web前端开发的编程语言,大多数网站都使用到了JavaScript,所以我们要进行学习,JavaScript ...
- 前端javascript
前端 JavaScript javaScript----数据库jquery $(function(){ 执行代码 }); 基本语法:$(selector).action() $(" ...
- Fundebug前端JavaScript插件更新至1.2.0
摘要: Fundebug的前端JavaScript错误监控插件更新至1.2.0:支持监控WebSocket连接错误:修复了监控unhandledrejection错误的BUG,即未用catch处理的P ...
- Fundebug前端JavaScript插件更新至1.8.2,修复2个小BUG
摘要: 修复2个BUG,请大家及时更新. Fundebug前端异常监控服务 Fundebug是专业的程序异常监控平台,我们JavaScript插件可以提供全方位的异常监控,可以帮助开发者第一时间定位各 ...
- Web前端-JavaScript基础教程下
Web前端-JavaScript基础教程下 <script>有6个属性: async对外部脚本有效,可以用来异步操作,下载东西,不妨碍其他操作. charset为src属性指定字符集. d ...
- 前端 JavaScript 复制粘贴的奥义——Clipboard 对象概述
前言 作为一名资深搬砖工,你要问我用得最熟练的技能是什么,那我敢肯定且自豪的告诉你:是 Ctrl+C !是 Ctrl+V! 不信?你来看看我键盘上的 Ctrl.C 和 V 键,那油光发亮的包浆程度,不 ...
随机推荐
- pyautogui 文档(一):简介
PyAutoGUI 可实现控制鼠标.键盘.消息框.截图.定位等功能,最近做了个自动化需要这些,故了解并记录下 自动化需要操作win7上的一个app,用PyAutoGUI做的,定位坐标,点击鼠标等,但是 ...
- 贝叶斯分类器,随机森林,梯度下载森林,神经网络相关参数的意义和data leakage
构建的每一颗树的数据都是有放回的随机抽取的(也叫bootstrap),n_estimators参数是你想设置多少颗树,还有就是在进行树的结点分裂的时候,是随机选取一个特征子集,然后找到最佳的分裂标准.
- CentOS7+CDH5.14.0安装CDH错误排查:HBase服务出现 该运行状况测试不良,因为 Service Monitor 未找到活动 Master
错误:HBase服务出现 该运行状况测试不良,因为 Service Monitor 未找到活动 Master 如果重启服务之后无法排除该问题,请执行如下操作(CM换成自己的版本号): rm -f /o ...
- 为什么text的值改变后onchange没有反应?
onchange发生在元素失去焦点后,而不是想象中的元素的值发生改变的时候.其实它的作用就跟onblur(失去焦点事件)差不多,只不过onchange是失去焦点且值发生了改变.要想实现目的,可以改用o ...
- ERRORS !MySQL 和 Javaweb 的报错合集
ERROR:1175. You are using safe update mode and you tried to update a table without a WHERE that uses ...
- BIF
list()把一个可迭代对象转化为列表 tuple()把一个可迭代对象转化为元祖 str()把参数对象转化为字符串 len()返回参数的长度 max()返回序列或者参数集合中的最大值 min()返回序 ...
- spring mvc 500错误Allocate exception for servlet AppService javax.naming.NamingException: Cannot create resource instance 竟是@Resource的原因
头几天已经测试的完毕了,换了个目录出现这个问题 严重: Allocate exception for servlet AppService javax.naming.NamingException: ...
- mysql 索引及索引创建原则
是什么 索引用于快速的查询某些特殊列的某些行.如果没有索引, MySQL 必须从第一行开始,然后通过搜索整个表来查询有关的行.表越大,查询的成本越大.如果表有了索引的话,那么 MySQL 可以很快的确 ...
- HYSBZ 2743 (树状数组) 采花
题目:这里 题意: 在2016年,佳媛姐姐刚刚学习了树,非常开心.现在他想解决这样一个问题:给定一颗有根树(根为1),有以下 两种操作:1. 标记操作:对某个结点打上标记(在最开始,只有结点1有标记, ...
- APP支付(.NET版)
---恢复内容开始--- APP支付(.NET版) 一. 支付宝支付 1. 有一个支付账号,在蚂蚁金服开放平台中登录账号→选择“管理中心”→在“开发者中心”下选择“网页&移动应用”→然后按 ...