前端--3、JavaScript
引入方式:
除了Python外其他语言都没有要求强制缩进。即JS对缩进无要求,只要符合语法即可。
示例中的alter为弹框
#单行注释
//
#多行注释
/*
注释
*/
直接在HTML中写入(了解)
<script>
//第一行JS
alter(123)
</script>
写到文件中引入
<script src="demo.js" ></script>
声明变量
变量赋值方式
var关键字声明一个字符串是变量。
再给定义的这个变量赋值。
单个变量赋值
<script>
var name;
name="yudong"
</script>
#可以简写为:
var age=3;
多变量的变量赋值
默认以换行符作为作为语句分隔符。也可使用分号作为语句的分隔符
var name="heling"; var age=18
数据类型
打印到屏幕终端。
数字and字符串
// console.log 输出打印到屏幕终端
// typeof 查看数据的数据类型
i=1
f=1.1
s="study"
console.log(i,typeof i);
//number
console.log(f,typeof f);
//number
console.log(s,typeof s);
//string
//不区分数字和浮点型
boolean
有两个值,true、false。逻辑判断
可以理解为数字类型的。True、False为0,1。可用于数字运算
undefined
只有一个值,undefined
遇到这个值的两种情况
- 变量只声明,未赋值。
- 当一个函数没有返回值的时候。
数据类型的存储
引用数据类型全部存在堆里。栈里存的都是基础数据类型。
堆里存的都是栈的内存地址。
数组
可以把多个数据存入其中。
C等语言在声明数组时要声明存储的数据类型
创建方式1:
var arrname = [元素0,元素1,….]; // var arr=[1,2,3];
创建方式2:
var arrname = new Array(元素0,元素1,….); // var test=new Array(100,"a",true);
创建方式3:
var arrname = new Array(长度);
// 初始化数组对象:
var cnweek=new Array(7);
cnweek[0]="星期日";
cnweek[1]="星期一";
...
cnweek[6]="星期六";
对象
映射关系的数据结构。 键加不加引号都可以
var obj = {"Q":"Z"}
可以使用字典的基本操作,如取key的value:obj["Q"]
数组和对象的数据类型都是object。
JS的解释方式
JS先读完整个文件,才开始执行。所以变量的使用可以写在该变量声明的上面。
运算符
#++ --
var i = 1;
i++
console.log(i)
#==
console.log(2=="2")
//返回时true,他在有一端是数字时另一端也会转换成数字>
#===
//不会转换数据类型,数据类型也必须一样。
#逻辑运算符,与 或 非
&& || !
真真为真,假假为假
字符串的拼接 用+号
NaN
转换数据类型时(即将字符串转换成数字类型)失败了会得到该类型。
流程控制语句
- 分支控制语句 if
- 循环控制语句 for while
JavaScript中使用{}来确认语句块(即满足条件时执行的语句体)。而Python中是使用:和缩进。
if-else if-else
if (表达式1) {
语句1;
}else if (表达式2){
语句2;
}else if (表达式3){
语句3;
} else{
语句4;
}
循环
- 遍历循环 for
- 条件循环 while JavaScript中都是条件循环。条件不满足就退出
详细见图片。
支持break 和 continue
js中的序列类型用.length都可以得到长度
函数
function funcname(参数) {
return X;
}
调用时可以传入任意数量的参数,它只接受固定数量的。
接受任意长度的 。
arguments 通过数组,获取所有传入的参数
匿名函数
// 匿名函数
var func = function(arg){
return "tony";
}
// 匿名函数的应用
(function(){
alert("tony");
} )()
(function(arg){
console.log(arg);
})('123')
BOM
window 是全局变量,调用时可以不用加window名,alter就是它里面的方法。
alter(info)
用于警告信息,只有确定
confirm(info)
显示带有一段消息以及确认按钮和取消按钮的对话框。 有返回值
prompt()
显示可提示用户输入的对话框。 有返回值
每一个标签都是一个对象
前端--3、JavaScript的更多相关文章
- 前端之JavaScript基础
前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript历史 1992年Nombas开发出C ...
- 互联网公司前端初级Javascript面试题
互联网公司前端初级Javascript面试题 1.JavaScript是一门什么样的语言,它有哪些特点?(简述javascript语言的特点)JavaScript是一种基于对象(Object)和事件驱 ...
- 第三篇:web之前端之JavaScript基础
前端之JavaScript基础 前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript ...
- 好程序员web前端分享javascript关联数组用法总结
好程序员web前端分享javascript关联数组用法总结,有需要的朋友可以参考下. Hash关联数组定义 代码如下 // 定义空数组 myhash = { } // 直接定义数组 myhash = ...
- 前端之JavaScript(二)
一.概述 本篇主要介绍JavaScript的BOM和DOM操作,在前端之JavaScript(一)中介绍了JavaScript基础知识 1.1.BOM和DOM BOM(Browser Object M ...
- Python web前端 05 JavaScript
Python web前端 05 JavaScript 一.获取元素 1.初识JavaScript /* .. */ #这是多行注释 // #这是单行注释 #JavaScript是一种脚本语言,是一种动 ...
- 我的前端规范——JavaScript篇
相关文章 简书原文:https://www.jianshu.com/p/5918c283cdc3 我的前端规范——开篇:http://www.cnblogs.com/shcrk/p/9271561.h ...
- web前端分享JavaScript到底是什么?特点有哪些?
web前端分享JavaScript到底是什么?特点有哪些?这也是成为web前端工程师必学的内容.今天为大家分享了这篇关于JavaScript的文章,我们一起来看看. 一.JavaScript是什么? ...
- 1+x 证书 Web 前端开发 JavaScript 专项练习
官方QQ群 1+x 证书 Web 前端开发 JavaScript 专项练习 http://blog.zh66.club/index.php/archives/198/
- 前端(3)JavaScript
前端(3)JavaScript JavaScript概述 1ECMAScript和JavaScript的关系: 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaS ...
随机推荐
- mysql利用timestamp来进行帖子排序
select * from table order by timestamp descorder by 该列 desc timestamp字段也可以用来排序,对应Java类型的.net.timesta ...
- 标准ACL、扩展ACL和命名ACL的配置详解
访问控制列表(ACL)是应用在路由器接口的指令列表(即规则).这些指令列表用来告诉路由器,那些数据包可以接受,那些数据包需要拒绝. 访问控制列表(ACL)的工作原理 ACL使用包过滤技术,在路由器上读 ...
- JQuery编程demo练习
JQuery练习demo: 编敲代码,实现: 1.选中当中一列的复选框时,该复选框所在行的背景色高亮显示(黄色). 2.取消选中复选框时,所在行的背景色恢复. ============ ...
- SpringMVC 学习笔记(五) 基于RESTful的CRUD
1.1. 概述 当提交的表单带有_method字段时,通过HiddenHttpMethodFilter 将 POST 请求转换成 DELETE.PUT请求,加上@PathVariable注解从而实现 ...
- POJ 2299 Ultra-QuickSort(线段树+离散化)
题目地址:POJ 2299 这题以前用归并排序做过.线段树加上离散化也能够做.一般线段树的话会超时. 这题的数字最大到10^10次方,显然太大,可是能够利用下标,下标总共仅仅有50w.能够从数字大的開 ...
- @Override用在哪儿
帮朋友改一段代码,看到好多红叉都是指向@Override. 是这样,他代码里写了一个接口.方法都用抽象函数声明在接口类里.然后在继承自这个接口的实现类里写详细方法的空壳 ...
- HDU5465/BestCoder Round #56 (div.2) 二维树状数组
Clarke and puzzle 问题描述 克拉克是一名人格分裂患者.某一天,有两个克拉克(aa和bb)在玩一个方格游戏. 这个方格是一个n*mn∗m的矩阵,每个格子里有一个数c_{i, j}ci ...
- 【bzoj4597】 [Shoi2016]随机序列
可以发现加减号之间可以互相抵消. 真正加到答案里的只有一些前缀积. 记s[i]为a[1]*a[2]*a[3]...*a[i].那s[i]在答案中出现的次数就是2*3^(n-i-1); 修改一个数只会对 ...
- PNG vs. GIF vs. JPEG vs. SVG - When best to use?
image - PNG vs. GIF vs. JPEG vs. SVG - When best to use? - Stack Overflow https://stackoverflow.com/ ...
- POJ 3100:Root of the Problem
Root of the Problem Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 12060 Accepted: 6 ...