[未完成]关于JavaScript总结
jsp服务端,js客户端.
javascript 是基于对象和事件驱动的脚本语言.
特点:
- 交互性
- 安全性(不允许直接访问本地硬盘)
- 跨平台性(只要是可以解析java的浏览器都可以执行,和平台无关)
各大浏览器都有解析该语言的解析引擎。
js是基于对象的,java是面向对象。
js只需解释就可以执行。java需要编译成字节码文件再执行。
js是弱类型,java是强类型。
jscript是微软的和javascript很相似。javascript没有帮助文档。
微软的帮助文档是很强的。
javascript 和html语言的结合。
Jquery是JavaScript封装的一个类库。
html中可以有多个表单form,这些表单用标签<forms></forms>括起来,每个表单叫<form></form>,用一个form[]数组存储,form[0]代表第一个表单,form[1]代表第二个表单。
window对象常用方法:(window.alert(),window可以省略)
alert(‘信息’) 消息框
prompt(‘提示信息’,默认值)标准输入框
confirm()确认框
open()打开 一个新窗口
close()关闭窗口
/*
* 通常高级程序设计语言所包含的语法内容:
* 1,关键字:该种语言中被赋予了特殊含义的单词。
* 2,标示符:用于标示数据和表达式的符号。通常可以理解为在程序中自定义的名称。比如变量名,函数名。
* 3,注释:注解说明解释程序。用于调试程序。
* 4,变量:用于标示内存中一片空间。用于存储数据,该空间的中的数据是可以变化的。
*什么时候使用变量,当数据不确定的时候。
* 5,运算符:可以让数据进行运算的符号。
* 6,语句:用于对程序的运行流程进行控制的表达式。
* 7,函数:用于对功能代码进行封装,便于提高复用性。
* 8,数组:对多数据进行存储,便于操作。就是传说中容器。
* 9,对象:只要是基于对象的语言,或者是面向对象的语言,就存在着对象的概念,对象就是一个封装体。既可以封装数据又可以封装函数。
* 这些都是高级程序设计语言具备的共性内容,只不过各种语言对这些内容的表现形式有所不同。
* 但是使用基本思想是一致。
*/
在javascript中单引号和双引号都是表示字符串,单引号和双引号之间可以相互嵌套。
var x= 3 var y =4;编译错误
var x= 3
var y =4;分两行写就编译正确。
别挑战javascript的极限。人家是弱类型语言,也不要欺负人家。
<!--
js和html相结合的方式:
1,将javascript代码封装到<script>标签中。
2,将javascript代码封装到js文件中,并通过<script>中的src属性进行导入。
注意:如果<script>标签中使用src属性,那么该标签中封装的javascript代码不会被执行。
所以通常导入js文件都是用单独<script>来完成。
-->
<!--导入一个js文件-->
<!--script type="text/javascript" src="demo.js"></script-->
这个<script></script>标签中已经导入了demo.js文件了,(js中提供的是函数库,不是类库,就和java中jar包一样的。)再在<script>中写javascript程序,这些程序是不会被执行的。所以导入js文件都是单独<script>来完成的。
<!--封装javascript代码。-->
<script type="text/javascript">
// alert("hello javascript");
</script>
<!--演示javascript语法通用内容-->
<script type="text/javascript">
/*
* 通常高级程序设计语言所包含的语法内容:
* 1,关键字:该种语言中被赋予了特殊含义的单词。
* 2,标示符:用于标示数据和表达式的符号。通常可以理解为在程序中自定义的名称。比如变量名,函数名。
* 3,注释:注解说明解释程序。用于调试程序。
* 4,变量:用于标示内存中一片空间。用于存储数据,该空间的中的数据是可以变化的。
* 什么时候使用变量,当数据不确定的时候。
* 5,运算符:可以让数据进行运算的符号。
* 6,语句:用于对程序的运行流程进行控制的表达式。
* 7,函数:用于对功能代码进行封装,便于提高复用性。
* 8,数组:对多数据进行存储,便于操作。就是传说中容器。
* 9,对象:只要是基于对象的语言,或者是面向对象的语言,就存在着对象的概念,
* 对象就是一个封装体。既可以封装数据有可以封装函数。
*
* 这些都是高级程序设计语言具备的共性内容,只不过各种语言对这些内容的表现形式有所不同。
* 但是使用基本思想是一致。
*/
</script>
<script type="text/javascript">
/*
* js中定义变量。使用到关键字。
* 这个关键字就是var
*/
//定义变量。Js是弱类型的。
var x = 4;//var不写也行,因为js是非严谨的语言,但是我们开发的时候建议都按照严谨的方式来定义。
x = "abc";//重新赋值为字符串abc。
x = 3.45;//赋值为小数。其实也是数字类型。
x = true;//赋值为boolean类型。
x = 'c';//赋值为字符串c。
// alert("x="+x);//这是一个函数,将具体的参数通过对话框进行显示。
</script>
<script type="text/javascript">
/*
* 运算符。
* 1,算术运算符。
* + - * / % ++ --
* 2,赋值运算符。
* = += -= *= /= %=
* 3,比较运算符:运算的结果要么是false要么是true。
* > < >= <= != ==
*
* 4,逻辑运算符。用来连接两个boolean型的表达式。
* ! && ||
* 5,位运算符。
* & | ^ >> << >>> js中单与和单或是位运算符,不是逻辑运算符
* 6,三元运算符。
* ? :
*/
//1,算术运算符演示。
var a = 3710;
// alert("a="+a/1000*1000);//a=3710; js是弱类型语言,注意这里和java的区别
var a1 = 2.3,b1 = 4.7;
// alert("a1+b1="+(a1+b1));
// alert("12"-1);//11
// alert("12"+1);//121
// alert(true+1);//2 因为在js中false就是0,或者null,非0,非null。就是true。默认用1表示。
// alert(2%5);//2
var n = 3,m;
m = ++n;
// alert("n="+n+",m="+m);
// =================================================
// 2,赋值运算符
var i = 3;
// i = i+2;
i+=2;
// alert("i="+i);
在js中i = i+2;和i+=2; 就没有任何区别了,在java中由于有类型的原因是有区别的。
// =================================================
// 3,比较运算符。
var z = 3;
// alert(z!=4);
// =================================================
// 4,逻辑运算符。
var t = 4;
// alert(t>7 && t<6);
// alert(!true);
alert(!t); //false js和java中的逻辑运算符是有区别的。js中“&”是位运算。
// =================================================
// 5,位运算符。
var c = 6;
// alert(c&3);//2 异或:两边相同则为假,两边不同为真。
// alert(5^3^3);//5 一个数异或同一个数两次,结果还是这个数。
// alert(c>>>1);//6/2(1); 6除以2的一次方
// alert(c<<2);//24 6乘以2的2次方。
// =================================================
//6,三元运算符。
// 3>0?alert("yes"):alert("no");
// alert(3>10?100:200);
</script>
if else和三元运算符的区别,if else可以没有结果,三元运算符必须有结果。
<script type="text/javascript">
/*
* 一些细节:
* 1,undefined:未定义。其实它就是一个常量。
*/
var xx;
// alert(xx);//undefined
// alert(xx==undefined);//true
//要想获取具体的值的类型。可以通过typeof来完成。
// alert(typeof("abc")=='string');//string
// alert(typeof(2.5)=='number');//number//判断类型。
// alert(typeof(true));//boolean
// alert(typeof(78));//number
// alert(typeof('9'));//string
</script>
<script type="text/javascript">
/*
* 语句:
* 1,顺序结构。
*
* 2,判断结构。
* 代表语句: if.
* 3,选择结构。
* switch
* 4,循环结构。
* while do while for
* 5,其他语句。
* break:跳出选择,跳出循环。
* continue:用于循环语句,结束本次循环继续下次循环。
*/
// alert("abc1");
// alert("abc2");
// ------------------------------------------------
/*
var x = 3;
// if(x=4){//注意。
if(4==x){//建议将常量放左边。以报错来修正代码。赋值常量只能拿放右边,判断放左边右边都可以。
alert("yes");
}else{
alert("no");
}
if(x>1)
alert("a");
else if(x>2)
alert("b");
else if(x>3)
alert("c");
else
alert("d");
这里只输出a,因为只要满足一个就进入,其他的不再判断。
*/
// ------------------------------------------------
/*
//选择结构。
var x = "abc";
switch(x){
default: //default总是最后执行的,尽管default是在最前面。
alert("c");
break;//省略。此处default注意省略会出现的现象。
case "kk":
alert("a");
break;
case "abc":
alert("b");
break;
}
*/
当我们对结果是一段空间,或者是boolean类型进行运算的时候,用if,当结果是固定的几个值的时候,既可以用if也可以用switch,但是建议用switch,因为switch都加载进了内存,答案都在内存中,进行选择就可以,效率相对较高,不过这些效率可以忽略不计。
//循环结构。
/*
var x = 1;
document.write("<font color='blue' >");
while(x<10)
{
// alert("x="+x);
//将数据直接写到当前页面当中。
document.write("x="+x+"<br/>");
x++;
}
document.write("</font>");
for(var x=0; x<3; x++){
document.write("x="+x);
}
*/
/*
w:for(var x=0; x<3; x++){
for(var y=0; y<4; y++){
document.write("x==="+x);
continue w;//跳出当前循环。
}
}
*/
</script>
[未完成]关于JavaScript总结的更多相关文章
- python 全栈开发之旅
目录 python 基础语法 python 数据类型(未完成) python 内置函数(未完成) python 常用标准库(未完成) python 类(未完成) python 进程.线程.协程(未完成 ...
- javascript 深入浅出 (未完成4-17)
慕课网javascript总结 课程地址 课程大纲: 一.数据类型 二.表达式和运算符 三.语句 四.对象 五.数组 六.函数 七.this 八.闭包和作用域 九.OOP 十.正则与模式匹配 ---- ...
- JavaScript技巧(未完成)
1.在js脚本语言中使用HTML语言中的< >号,但是在XHTML中却不能使用这类符号,可以将<号转换成<符号(XHTML比HTML跟严格),这种做法比较不好理解,可以用 ...
- JavaScript中的Promise【期约】[未完成]
JavaScript中的Promise[期约] 期约主要有两大用途 首先是抽象地表示一个异步操作.期约的状态代表期约是否完成. 比如,假设期约要向服务器发送一个 HTTP 请求.请求返回 200~29 ...
- JavaScript 设计模式的七大原则(未完成)
设计模式(面向对象)有七大设计原则,分别是: 开闭原则:对扩展开放,对修改关闭 单一职责原则:每一个类应该专注于做一件事情 里氏替换原则:父类存在的地方,子类是可以替换的 依赖倒转原则:实现尽量依赖抽 ...
- Javascript图片预加载详解
预加载图片是提高用户体验的一个很好方法.图片预先加载到浏览器中,访问者便可顺利地在你的网站上冲浪,并享受到极快的加载速度.这对图片画廊及图片占据很大比例的网站来说十分有利,它保证了图片快速.无缝地发布 ...
- [译]理解Javascript的异步等待
原文链接: https://ponyfoo.com/articles/understanding-javascript-async-await 作者: Nicolás Bevacqua 目前async ...
- javascript的ajax
AJAX 一 AJAX预备知识:json进阶 1.1 什么是JSON? JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.JSON是用字符串来表示Javas ...
- 【JavaScript】--ajax
1 什么是AJAX AJAX(Asynchronous Javascript And XML)翻译成中文就是“异步Javascript和XML”.即使用Javascript语言与服务器进行异步交互,传 ...
随机推荐
- Linux rpm 命令参数
rpm 执行安装包二进制包(Binary)以及源代码包(Source)两种.二进制包可以直接安装在计算机中,而源代码包将会由RPM自动编译.安装.源代码包经常以src.rpm作为后缀名. 常用命令组合 ...
- HDU 5805 NanoApe Loves Sequence (模拟)
NanoApe Loves Sequence 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5805 Description NanoApe, the ...
- iOS学习之自动布局
Autolayout: 最重要的两个概念: 约束:对控件位置和大小的限定条件 参照:对控件设置的约束是相对于哪一个视图而言的 自动布局的核心计算公式: obj1.property1 =(obj2.pr ...
- MVC神韵---你想在哪解脱!(十八)
数据的修改视图 首先打开Movie控制器,添加一个返回数据修改视图的Edit()方法与一个对该视图中的表单提交进行处理的Edit()方法,代码如下所示: // GET: /Movies/Edit pu ...
- Volley使用指南第四回(来自developer.android)
Volley网络请求的第四篇,废话不多说,开始. 这一篇文章将会教你怎样在Volley支持的范围内定制一个请求. 第一步:写一个通用请求: 大多数请求都有已经写好的接口供你调用,如果你的请求是Stri ...
- 使用WPF来创建 Metro UI程序
本文转载:http://www.cnblogs.com/TianFang/p/3184211.html 这个是我以前网上看到的一篇文章,原文地址是:Building a Metro UI with W ...
- MEF 编程指南(十二):批量组合
MEF 容器实例并非不可变的.如果目录支持改变(像监控目录变动)或者在运行时添加/移除部件都可能发生改变.以前,你不得不做出改动并且调用 CompositionContainer 上的 Compose ...
- Ubuntu 12.04 中安装和配置 Java JDK
先去 Oracle下载Linux下的JDK压缩包,我下载的是jdk-7u4-linux-i586.tar.gz文件,下好后直接解压 sudo mv ./jdk1.7.0_55 /usr/lib/jdk ...
- strutx.xml中配置文件的讲解
Struts2框架的核心就是struts.xml文件了,该文件主要负责管理Struts的2的业务控制组件的核心内容.为了避免struts.xml的文件国 语庞大和臃肿,我们可以通过把一个struts. ...
- MySQL安装详解(V5.5 For Windows)
前言 这几年一直在用MySQL,并且是Windows+.Net+MySQL的搭配,用MyISAM引擎支持过单表每天千万以上的数据递增,TB级的数据MySQL游刃有余.最近在做一个较大并发的项目,尝试了 ...