j2ee学习笔记 javascript 学习
JavaScript 组成:
ECMAScript + BOM + DOM
Window对象是JS中的顶层对象
ECMAScript: 规定了一些语法,变量,for循环等等结构
BOM: Browser object Model 浏览器对象模型
DOM:Document object Model 文档对象模型
案例:
<script type="text/javascript">
<!--
alert("abc");
//--> 如果浏览器不认识他,就忽略掉
</script>
数据类型
<html>
<head></head>
<script type="text/javascript">
/* javascript的数据类型:没有数据类型
使用typeof来判断数据类型
a.基本类型
1.undefined: 没有给变量赋值时的类型
2.String:
3.Boolean
4.Number:
5.function:
6.null
b.引用类型
Object
c.判断变量的类型的两种方式
1.typeof(): 打印的是所有类型的toString方法(所有类型的小写)
2.instanceof 关键字 ,判断变量是不是由某种类型new出来的。
*/
var a ;
a = 10;
a="abc";
a = true;
a=20;
alert(a instanceof Number);//因为不是new出来的,所以会显示false
a = new Number(30);
alert(a instanceof Number);//true
alert(typeof(a));
</script>
表单提交数据
<html> <head>
<title>表单标签</title>
作用:搜集数据<br><br>
</head>
<body>
</body>
<form action="" method="get">
<!--action指要提交的页面 method默认采用的是get方式,post方式较为安全--
get方式将参数附加到网址后面,get方式的数据大小有限制 < 1k -->
<!--value 表示要输入的内容 , value就是要提交到服务器的内容。
size表示字符的个数
readonly 只读
-->
姓名: <input type="text" value="请输入内容" size= readonly> <br><br>
密码: <input type="password" value="请输入密码" ><br><br>
隐藏框:<input type="hidden" value="hiddent"><br><br>
性别: <input type="radio" name="gender" value="male" >男<input type="radio" name="gender" value="female" checked>女<br><br>
<!--需要设定name 才能认为是一组,菜单实现单选-->
<!--checked的值也是checked,可以省略,readonly的值也是readonly,可以省略-->
爱好: <input type="checkbox" name="love" value="打游戏">打游戏
<input type="checkbox" name="love" value="编程">编程
<input type="checkbox" name="love" value="打篮球">打篮球
<input type="checkbox" name="love" value="游泳">游泳
<input type="checkbox" name="love" value="追剧">追剧<br><br> 学历:<select name="xueli">
<option value="高中">高中</option>
<option value="本科">本科</option>
<option value="硕士">硕士</option>
<option value="博士">博士</option>
<option value="博士后">博士后</option>
</select><br><br>
备注:<textarea rows="" clos=""></textarea><br><br>
<!--占据5行,5列,中间不要留空-->
按钮:<br> <input type="button" value="普通按钮"onclick="alert(this.value)"><br>
<input type="submit" value="提交按钮" onclick="alert(this.value)"><br>
<input type="reset" value="重置按钮"><br><br>
<input type="image" src="9.jpg"><br><br>
<input type="image" value="普通按钮"><br><br> <button></button> </form> </html>
javascript的类型转换
1.把字符串转换为number类型
a.parseInt,parseFloat 不推荐,较复杂。
b.n * 1;
2.把字符串转换成boolean类型
非零为真,零为假。
NaN : not a number
var a ="";
a = a * ;
alert(typeof(a)); function fun(){
//拿到文本框对象
var txt = document.getElementById("age");
//判断内容
if(tex == ){
alert("年龄大于0");
}else{
alert("");
}
}
函数的定义方式:
1.采用关键字function:
2.采用匿名函数的方式(采用function作为名字)--了解即可
函数的调用:
调用函数的时候是采用函数名来寻找的,不能有重名的函数。
function fun(){
alert("function");
}
//写函数名调用
fun(); var a = function(){
alert("我是匿名函数");
}
a();
函数劫持:改变javascript的函数预定义好的功能
window.alert = function(x){
document.write(x);
}
全局函数
1.isNaN : 是不是一个数字,返回TRUE不是数字; NaN:not a number
2.parseInt,parseFloat
3.eval:
a.主要执行字符串,将结果转换为数字
b.将json格式的字符串转换为json
{"a":"中国","b":"美国","c":"日本"}
4.escape() 编码
5.encodeURI(): 对网址(URL)进行编码
6.decodeURI(): 对网址爱(URL)进行编码
var a = ""; if(isNaN(a)){
alert("不是数字");
}else{
alert("是数字");
}
<!--结果是数字,因为javascript只判断内容,不判断类型--> alert("" + ""); <!----> alert(eval("") + eval("")); <!----> var b = "中国"; var c = escape(b);
alert(c);
alert(unescape(c)); var e = "http://www.sohu.com?a=中国&b=美国";
var f = encodeURI(e);
alert(f);
alert(decodeURI(f));
javascript中数组的类型
数组对象的定义方式
1.采用new Array() 的方式
2.采用[] 来定义(推荐使用)
javascript中数组与java中数组的差别
a.java中数组是有类型的,数组只能放一中数据类型,
javascript中的数组没有类型,但是不推荐放多种类型的数据。
b.java中数组的长度一旦确定就不能再改变了。
javascript中的数组长度是可以变化的。
c.java中的数组的数据引用必须用下标引用,
javascript中的数组的数据引用可以用任意对象。
var arr = new Array(); //定义数组arr,初始长度为0
var arr1 = new Array(); //定义一个数组arr1,初始长度为4
arr1[] = ;
arr1[] = ; alert(arr1[]);
alert(arr1[]);<!--没有定义,则是undefined类型--> var arr2 = new Array(,,,,,,,); var arr3 = [,,,,,]; //定义了一个数组,同时初始化数据
数组对象的方法array
1.join(); 默认情况下用逗号隔开;
2.将元素添加到数组的末尾;
3.reverse() 翻转顺序
4.shift() 删除并返回第一个元素。
5.sort() 排序
默认情况下先将能转换为number类型的字符串和number类型的放一起比较(转换为String类型进行比较)
转换不成的作为一组进行比较
按照自己的规则进行比较:需要传递一个function类型的参数制定比较规则。
var arr1=["中国","美国","日本"];
alert(arr1.join()); <!--默认情况下用逗号隔开;-->
alert(arr1.join("")); //用空字符串连接
arr1.push("东京");
alert(arr1.join());
alert(arr1.reverse());//翻转顺序
alert(arr1.shift());
-------------------------------------------------------
var arr1 = [,,"","",];
alert(arr1.sort()); // 按字符串排序,3 < 333 < 34 < 4 //指定自己的规则
alert(arr1.sort(function(a,b){
if(a * > b * ){
return ;
}else{
return -;
}
}));
j2ee学习笔记 javascript 学习的更多相关文章
- 学习笔记---Javascript事件Event、IE浏览器下的拖拽效果
学习笔记---Javascript事件Event.IE浏览器下的拖拽效果 1. 关于event常用属性有returnValue(是否允许事件处理继续进行, false为停止继续操作).srcE ...
- java JDK8 学习笔记——助教学习博客汇总
java JDK8 学习笔记——助教学习博客汇总 1-6章 (by肖昱) Java学习笔记第一章——Java平台概论 Java学习笔记第二章——从JDK到IDEJava学习笔记第三章——基础语法Jav ...
- python3.4学习笔记(七) 学习网站博客推荐
python3.4学习笔记(七) 学习网站博客推荐 深入 Python 3http://sebug.net/paper/books/dive-into-python3/<深入 Python 3& ...
- 20155234 2016-2017-2第十周《Java学习笔记》学习总结
20155234第十周<Java学习笔记>学习总结 教材学习内容总结 网络编程 在两个或两个以上的设备(例如计算机)之间传输数据.程序员所作的事情就是把数据发送到指定的位置,或者接收到指定 ...
- 20155234 2610-2017-2第九周《Java学习笔记》学习总结
20155234第九周<Java学习笔记>学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC(Ja ...
- #学习笔记#e2e学习使用(二)
前言: <#学习笔记#e2e学习使用(一)>主要记录了Vue项目的创建到e2e环境的搭建,以及期间遇到的各种问题和解决方法.本文建立在基础测试环境搭建完毕能正确运行的情况下,编写测试代码, ...
- #学习笔记#e2e学习使用(一)
本文仅限于记录本人学习的过程,以及怎么踩的坑,是如何解决的.逻辑肯定是混乱的,有用之处会抽出共通另行发帖. 最终目标:要运用于Vue项目中,进行功能测试甚至自动化测试. 一.e2e概念 理解:end ...
- mybatis学习笔记之学习目录(1)
mybatis学习笔记之学习结构(1) 学习结构: 1.mybatis开发方法 原始dao开发方法(程序需要编写dao接口和dao实现类) mybatis的mapper接口(相当于dao接口)代理开发 ...
- Vue学习笔记-rest_framework_jwt 学习
一 使用环境 开发系统: windows 后端IDE: PyCharm 前端IDE: VSCode 数据库: msyql,navicat 编程语言: python3.7 (Windows x86- ...
随机推荐
- Android 去除list集合中重复项的几种方法
因为用到list,要去除重复数据,尝试了几种方法.记录于此... 测试数据: List<"}; List<string> li2 = new List<string& ...
- 从 Android 静音看正确的查找 bug 的姿势
0.写在前面 没抢到小马哥的红包,无心回家了,回公司写篇文章安慰下自己TT..话说年关难过,bug多多,时间久了难免头昏脑热,不辨朝暮,难识乾坤...艾玛,扯远了,话说谁没踩过坑,可视大家都是如何从坑 ...
- POJ 3126 Prime Path 解题报告(BFS & 双向BFS)
题目大意:给定一个4位素数,一个目标4位素数.每次变换一位,保证变换后依然是素数,求变换到目标素数的最小步数. 解题报告:直接用最短路. 枚举1000-10000所有素数,如果素数A交换一位可以得到素 ...
- -_-#【CSS 优化】
高性能CSS 关于css通配符性能问题不完全测试 CSS的渲染效率 border: none; /* 不写 border: 0; 但几乎都是写 border: 0;的.. */ 不要使用过小的图片做背 ...
- log4net面面观之Repository
转:http://itrust.cnblogs.com/archive/2006/07/17/452895.html 上回说道:Repository可以说成基于一个log4net配置节创建的log4n ...
- MVC中的@Html.DisplayFor等方法如何控制日期的显示格式(转)
http://www.tuicool.com/articles/BNVBR3 在Sql Server2005中,如果将某字段定义成日期 时间 类型DateTime,那么在视图中会默认显示成年月日时分秒 ...
- app图片规格
我们定义的app图片规格 app图标需要分iphone和android两套 iphone: 名称 Iphone4 Iphone5 手机尺寸 960*640(高*宽) 1136*640 (高*宽) 电池 ...
- HDU 2817 A sequence of numbers
http://acm.hdu.edu.cn/showproblem.php?pid=2817 __int64 pow_mod (__int64 a, __int64 n, __int64 m)快速幂取 ...
- QT无法定位入口点QtCore4.dll(万恶的matlab啊)
今天安装QT, 参考: http://www.qtcn.org/bbs/simple/?t53333.html 遇到问题 发现怎么更matlab有关了.果断把系统环境变量改一下:放到了最前面 呵呵,行 ...
- [NOIP2011]数的划分
本题地址:http://www.luogu.org/problem/show?pid=1025 题目描述 将整数n分成k份,且每份不能为空,任意两份不能相同(不考虑顺序).例如:n=7,k=3,下面三 ...