【5】WEB安全学习----JavaScript 一
目录
一、基础知识
1、如何引用js代码
2、处理不支持JavaScript脚本的情况
3、数据类型
4、运算符
1、赋值运算符
2、数学运算符
3、位运算符
4、位操作符
5、比较运算符
6、逻辑运算符
7、逗号运算符
8、空运算符
9、三元运算符
10、对象运算符
11、typeof运算符
5、数组
6、逻辑处理
1、IF条件语句
2、switch条件语句
3、for循环语句
4、while和do-while语句
5、break和continue语句
6、with对象操作语句
7、使用for....in进行对象循环
二、函数
1、函数的定义
2、作为对象的函数
3、函数递归调用
一、基础知识
1、如何引用js代码
- <!-- 包含于<script>和</script>标记内,嵌入到html文档中 -->
- <html>
- <body>
- <script>
- document.write("hello world");
- </script>
- </body>
- <html>
- <!-- 通过<script>标记的src属性链接到外部的js脚本文件 -->
- <html>
- <body>
- <script src="1.js"></script>
- </body>
- <html>
- <!-- 通过 JavaScript伪URL地址引入 -->
- <html>
- <body>
- <input type="text" οnclick="javascript:alert('hello')">
- </body>
- <html>
- <!-- 通过HTML文档事件处理程序引入 -->
- <html>
- <body>
- <script>
- function mess()
- {
- alert("hello");
- }
- </script>
- <input type="button" οnclick="mess()">
- </body>
- </html>
2、处理不支持JavaScript脚本的情况
- <html>
- <body>
- <script>
- <!--
- alert(/xss/); //如果当前浏览器不支持JS代码,那么会自动忽略隐藏此段代码
- -->
- </script>
- </body>
- </html>
3、数据类型
Number型:整数型和浮点型
String型:字符型
Boolean型:布尔型(true和false)
Undefined型:未定义类型,用于不存在或没有被赋初始值的变量或对象的属性
Null型:表示空值
Function型:表示函数
Array型:数组型
Object型:对象型
4、运算符
1、赋值运算符
包含=、+=、-=、*=、/=、%=、&=、^=
2、数学运算符
包含+、-、*、/、%、++、--
3、位运算符
包含&、|、^、~,先将操作数转换为二进制进行运算,操作完将返回值转换成十进制
4、位操作符
包含>>、<<、>>>
5、比较运算符
包含==、!=、>、<、<=、>=
6、逻辑运算符
包含&&、||、!
7、逗号运算符
可使用逗号将多个语句连在一起,浏览器载入该代码时,将其作为一个完整的语句来调用,但语句的返回值是最右边的语句。
8、空运算符
空运算符对应关键字“void”,其作用是定义一个表达式,但该表达式并不返回任何值。
9、三元运算符
表达式?语句A:语句B
- var a = 10;
- var b = 5;
- a>b?alert(a):alert(b); //弹出10
10、对象运算符
主要支持四种对象运算符,包括点号运算符(用来访问对象的属性和方法)、new运算符(创建新对象)、delete运算符(删除数组特定元素、删除对象属性和方法)以及()运算符(用来调用对象的方法)
11、typeof运算符
用于表明操作数的数据类型,返回数值永远是一个字符串。
- var a = 10;
- alert(typeof(a)) //弹出number
5、数组
一组同种或不同类的数据的集合,称为数组。
- #定义数组
- var arr = [1,2,3,4];
- var arr1 = ['hello',123,True];
- var arr2 = new Array('eee',123);
- #数组元素的访问
- var a = arr[0];
- #修改数组元素
- arr[0] = 11;
- #获取数组长度
- arr.length
6、逻辑处理
1、IF条件语句
- var a = 10;
- var b = 5;
- if(a>b)
- {
- alert(a);
- }else{
- alert(b);
- }
2、switch条件语句
- var year = 4;
- var army;
- switch(year)
- {
- case 0:
- army="平民";
- break;
- case 1:
- army="列兵";
- break;
- case 2:
- army="上等兵";
- break;
- case 3:
- army="一级士官";
- break;
- case 4:
- army="二级士官";
- break;
- default:
- army="中高级士官";
- break;
- }
- document.write("你的军衔是"+army);
3、for循环语句
- for(var i=0;i<10;i++)
- {
- document.write(i+"<br />");
- }
4、while和do-while语句
- var i = 1;
- while(i<10)
- {
- document.write(i+"<br />");
- i++;
- }
- var i = 1;
- do
- {
- document.write(i);
- i++;
- }while(i<10);
5、break和continue语句
break语句跳出循环,continue语句停止正在进行的循环,直接进入下一次循环
- for(var i=0;i<10;i++)
- {
- if(i%2==0)
- {
- continue;
- }else{
- document.write(i+"<br />");
- }
- }
6、with对象操作语句
如果需要经常引用同一对象的多个属性或方法,with操作可以简化引用过程。
- document.write("aaa<br />");
- document.write("bbb<br />");
- document.write("ccc<br />");
- with(document)
- {
- write("eee<br />");
- write("fff<br />");
- write("ggg<br />");
- }
7、使用for....in进行对象循环
- for (变量名 in 对象名)
- {
- 语句
- }
- for (num in window)
- {
- document.write(i); //打印出window对象所有方法和属性
- }
二、函数
1、函数的定义
- 函数的定义:
- function 函数名([参数])
- {
- 语句
- [return 表达式;]
- }
- function add(int1,int2)
- {
- return int1+int2;
- }
- document.write(add(2,4));
2、作为对象的函数
JavaScript中所有的数据类型、数组等均可作为对象,函数也是。可使用new操作符和function对象的构造函数来生成指定规则的函数。
var fun1 = new Function(int1,int2);
3、函数递归调用
- function fun1(int1)
- {
- if(int1==1)
- {
- return 1;
- }
- return int1 * fun1(int1-1);
- }
- document.write(fun1(3));
【5】WEB安全学习----JavaScript 一相关推荐
- 通过制作数字桌面游戏和Web应用程序学习JavaScript
Building 2D games can be a great way to learn JavaScript, especially when working through the basics ...
- 零基础web前端学习之JavaScript 和css 阻塞
web前端学习之JavaScript 和css 阻塞,JavaScript 是客户端和服务器端的脚本语言,可以插入HTML 页函中, 并且是目前较热门的Web 开发语言.同时, JavaScript ...
- 老徐WEB:js入门学习 - javascript变量
javascript变量是最基础的知识,也是学习任何编程语言都会接触,并且要学习的知识. 如果你在编程过程中需要存放一个数字,比如100,那么你首先要声明一个变量,然后把数字100赋值给变量,这样在程 ...
- 每个程序员都需要学习 JavaScript 的7个理由
最近在和招聘经理交流现在找一个好的程序员有多难的时候,我渐渐意识到了现在编程语言越来越倾重于JavaScript.Web开发人员尤其如此.所以,如果你是一个程序员,那么你应该去学习JavaScript ...
- 更快学习 JavaScript 的 6 个思维技巧
2019独角兽企业重金招聘Python工程师标准>>> 我们在学习JavaScript,或其他任何编码技能的时候,往往是因为这些拦路虎而裹足不前: 有些概念可能会造成混淆,尤其当你是 ...
- python web-Python的哪个Web框架学习周期短,学习成本低?
不用学前端编程,你就能用 Python 简单高效写出漂亮的交互式 Web 应用,将你的数据分析成果立即展示给团队和客户. /> 痛点 从我开始折腾数据分析工具的那一天,就没有想明白一件事儿 -- ...
- [译] 学习 JavaScript:9 个常见错误阻碍你进步
本文讲的是[译] 学习 JavaScript:9 个常见错误阻碍你进步, 原文地址:Learning JavaScript: 9 Common Mistakes That Are Holding Yo ...
- 【从0到1学Web前端】javascript中的ajax对象(一)
[从0到1学Web前端]javascript中的ajax对象(一) 如今最流行的获取后端的(浏览器从server)数据的方式就是通过Ajax了吧.今天就来具体的来学习下这个知识吧.假设使用ajax来訪 ...
- 如何循序渐进有效学习 JavaScript?
张克军 , 豆瓣前端工程师 185 票,来自 haochuan . Yin .知乎用户 更多 我的建议: 1. 选本好书 http:// book.douban.com/subject /2994 ...
最新文章
- Android中处理崩溃异常 (转)
- 如何知道自己的研究课题是不是领域热点?
- Received empty response from Zabbix Agent at [172.16.1.7]...
- 用户 'sa' 登录失败。原因: 未与信任 SQL Server 连接相关联
- 字符串string和内存流MemoryStream及比特数组byte[]互转
- 在Linux终端下调用可执行文件时总要加上符号./的原因
- java elementtext_java命名空间javax.xml.stream接口xmlstreamreader成员方法:
getelementtext定义参考...
- linux 卸载ninja,Linux下数据库管理工具:DbNinja
- STM32F103mini教程学习总结与心得(一)
- 通过过滤器获取表单元素
- AES算法,DES算法,RSA算法JAVA实现
- (转)知识图谱如何让智能金融“变魔术”
- 记录贴:阿里云 ECS服务器CentOS系统 搭建 Hexo 博客详细教程
- 软件License管理与代码保护技术概述
- 新蓝天羽网体育用品商店
- 所谓笔法在也其次-《述张长史笔法十二意》
- 九麟SDK 接入文档
- 悲催的体能测试,需要休整的身体~
- JavaScript 实现汉字按拼音首字母分组拼序
- 智能手机和PC降温,英伟达英特尔等把钱砸向了AI
热门文章
- 华为p9 Android6 备份,华为手机怎么备份?华为手机备份数据教程
- #距离#JZOJ 3256 BZOJ 3170 洛谷 3964 松鼠聚会
- 绿盟科技网络安全威胁周报2017.07 请关注OpenSSL拒绝服务漏洞CVE-2017-3733
- java代理实现爬取代理IP
- kdb代码分析(七)
- PPT如何抠图?这个操作还真没了解过
- 新书出版了(文末送书)
- PTA: 旅游规划 [狄杰斯特拉+堆优化+链式前向星]
- 两计算机配置ip地址,简单配置ip地址
- 试总结计算机整机组装的方法和流程,项目9 组装计算机整机.ppt