java && javascript && php 轰炸!!!恢复
1.javascript简介
*是基于对象和时间的驱动语言,应用于客户端。
—–基于对象:
**提供好了很多对象,可以直接拿过来使用。
—–事件驱动:
**基于事件本来要求做出动态效果。
—–客户端:
**专门指运行于客户端。
2.javascript特点
(1)交互性
—信息的动态交互
(2)安全性
—js不能访问本地磁盘文件。
(3)跨平台性
—只要能够支持js的浏览器,都可以运行。
3.js组成
—ECMAscript(js的基本语法)
—bom (浏览器对象模型):对网页窗口界面所做的操作。
—dom (文档对象模型):对网页内容增删改等所做的操作。
4.javascript与java的区别
(1)Java早期是sun公司,如今是oracle公司,sun公司被oracle收购。js是网景公司。1
(2)javascript是基于对象的,有设置好的内置对象,而Java是面向对象的,需要new一个类的对象的实例化。
(3)Java是强类型语言,js是弱类型语言。
例:Java里的int i=”10″,这就是错误的写法,必须写成int i=10或者String i=”10″
而在js中,var i=10和var i=”10″这两种写法均是正确的。
(4)js只需要解释就可以执行,而Java需要编译成字节码文件,才可以执行。
(5)js可以运行于任何一台支持js的浏览器上,Java能运行在任何一台安装了Java虚拟机的电脑上。
(6)javascrip与Java虽然在名字上有一点点类似,但实际没有任何关系。
**Java有8种基本数据类型
基本数据类型
字节
byte
1 8位
short
2 16位
int
4 32位
long
8 64位
float
4 32位
double
8 64位
char
2 16位
boolean
1 8位
js有5种原始数据类型
定义变量:使用关键是var
* String (字符串) var str=”asfgdasga”;
* number (数字类型) var m=123;
* boolean (true或者 false)
* null var date=new date();表示对象引用为空,所有对象的引用均是object
* undifined (定义了变量,没有赋值)
** js获取系统时间的方法
var date =new Date();
window.alert(date.getFullYear()); //2018 获取当前年份
window.alert(date.getMonth()); //4 获取当前月份
window.alert(date.getDate()); //26 获取当前x号
window.alert(date.getDay()); //6 获取当前星期x
window.alert(date.toLocaleString()); //获取日期与时间 2018/5/26 下午12:05:45
window.alert(date.getHours()); //12 获取当前小时
window.alert(date.getMinutes()); //5 获取当前分钟数
window.alert(date.getSeconds()); //46 获取当前秒数
window.alert(date.toLocaleDateString()); //2018/5/26 获取当前日期
window.alert(date.toLocaleTimeString()); //下午12:08:23 获取当前时间
**java获取系统时间的方法:
package example3;
import java.text.SimpleDateFormat;
import java.util.Date;
public class test{
public static void main(String[] args) {
/*Date day=new Date();
System.out.println(day.toLocaleString()); //用此函数实现也可以。
SimpleDateFormat df = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
System.out.println(df.format(day)); */
//2018-05-26 12:12:20
Date date=new Date();
String year = String.format(“%tY”, date);
String month = String.format(“%tB”, date);
String day = String.format(“%te”, date);
System.out.println(“今天是:”+year+”年”+month+day+”号”);
//今天是:2018年五月26号
}
}
**php获取系统时间的方法:
$date=date(“Y-m-d H:i:s”,time());
echo $date;
** Java中和js,php运算符的不同。
在Java中,算式123/1000*1000 得到的结果为0
在js中,算式123/1000*1000的结果为123
原因是Java中的除法运算结果只能得到整数,自动忽略小数。而在js中,会精确到小数点后16位。php与js相同
window.alert(str+1); // 123451
window.alert(str-1); //12344
window.alert(str1+1); //abc1
window.alert(str1-1); //NaN (not a number)
var flag=true;
window.alert.(flag+1); // 2
var flag1=false;
window.alert.(flag1+1); // 1
在Java中,
String str1=”abcd”;
String str=”12345″;
System.out.println(str+1); //123451
System.out.println(str1+1); //abcd1
//System.out.println(str-1); 错误写法,编译是就无法通过。
在php中
$str=”1234″;
echo $str+1; //1235
echo $str-1; //1233
数组定义:js中,
1.var array=[1,”2″,true,”122345″]; //数组中可以放任意类型的数据。
2.var array=new Array(5);
array[0]=”1″;
array[1]=java;
3.var array=new Array(“2″,”baojuan”,”hello”);
在Java中,严格规定存入数组的数据的类型。
1.int[ ] arr=new int[5];
arr[0]=5;
arr[1]=”1234556″; //将会报错,错误写法。
2.int[ ] arr=new int[ ]{1,2,3,5,5};
3.int[ ] arr={1,2,5,6,9};
在PHP中,
/*$array = array();
$array[0] = “45665”; $array[1] = “hello”;*/ /*$users = array(phone,computer,dos,linux);*//*$users = array(trigkit4=>22,mike=>20,john=>30,key=>value);*/php中特殊的遍历方法:foreach($users as $key => $value){
echo $key=>$value.;函数区别:在java中定义一个函数public 返回值类型 void/int 方法名(参数列表){ 方法体; 返回值; }当返回值选int时,必须要有返回值,当返回值类型选void空类型时,一定不能有返回值。public int add(int a, int b){ int sum=a+b; return sum;}在js中,定义一个函数: 关键字(function)方法名 (参数列表){ 方法体; 返回值(可有可无,根据实际需要取舍)}function add(a,b){ var sum=a+b; alert(sum);}add(2,5); var add1=function(m,n){alert(m+n);}add1(5+6); var add2=new Function(“x,y”,”var sum;sum=x+y;return sum;”);alert (add2(2,5)); 在PHP中,定义一个函数: function 函数名(参数列表){ 函数体; 返回值;}function sum($a,$b){$num = $a + $b;return $num;}echo sum(5,8);Java和js相同的方法:(字符串连接)String str1=”abcd”;
String str=”12345″;System.out.println(str1.concat(str)); //abcd12345split()方法切分字符串与Java中是一样的。replace()方法和Java也是一样的。需传入两个参数,原始字符串,用来替换的字符串。 var str1=”abcd”;
var str=”12345gdgagga”;document.write(str1.concat(str));document.write(str1.charAt(0)); //a 其中参数代表字符串下标,根据字符串下标返回字符document.write(str1.indexOf(b)); //1 其中参数代表字母,根据字符串字符返回下标document.write(str.substr(str,5,3)); //从第五位开始,向后截取3个字符 gdgdocument.write(str1.substring(3,5)); //从第三位开始截取,截取到第五位结束,但不包含第五位。如果要寻找的字符不存在,则会返回-1. //45concat()方法对于数组的连接也同样适用。var arr=[1,2,3,5];//按照某一个标记来分割数组。document.write(arr.join(“-“)); //1-2-3-5push()方法向数组末尾添加元素。pop()方法删除数组中的一个元素,并返回被删除的元素值。reverse()方法经数组数据倒转js的math对象:Math.ceil(10.7) //向上舍入 无论小数点后是几,都取11floor() //向下舍入 无论小数点后是几,都取10round() //四舍五入random() //返回0-1之间的随机数Math.random()*10 //表示返回0-10之间的随机数pow(x,y)表示x的y次幂eval()函数可以直接使用,用于执行js代码。例:var str=”alert (“1234568″);”;eval(str); //1234568encodeURI(); 对字符进行编码decodeURI(); 对字符进行解码 **函数重载的定义:方法名相同,参数不同js中不存在重载,但可以通过数组来模拟实现重载效果。(面试题)function add(){//将传递的参数保存进入arguments数组中。
if(arguments.length==2){
return arguments[0]+arguments[1];
}else if(arguments.length==3){
return arguments[0]+arguments[1]+arguments[2];
}else if(arguments.length==4){
return arguments[0]+arguments[1]+arguments[2]+arguments[3];
}else{
return 0;
}
}
alert (add(2,3)); //5
alert (add(2,3,5)); //10
alert (add(2,3,4,5)); //14
alert (add(2,3,2,5,8)); //0bom对象screen.width screen.heightlocation.href(“某个页面的路径”); //可以用于点击事件的页面跳转history.back(); //可以用于页面跳转时跳到上一个页面history.forward(); //可以用于页面跳转时跳到下一个页面history.go(-1); //跳至上一个页面history.go(1); //跳至下一个页面var blag=window.confirm(“确定删除吗?”) //返回布尔类型的结果window.prompt(); //在窗口提示输入对话框window.open(); //打开新窗口window.close();window.setInterval(“js代码”,毫秒数); 1秒=1000毫秒window.setInterval(“alert(‘hgahsfJ’);”,3000); //表示每隔三秒,执行一次alert方法window.setTimeout(“js代码”,毫秒数); //表示在毫秒数之后执行,但只会执行一次。clearInterval(“传入setInterval函数的返回值”); //清除setInterval设置的计时器clearTimeout(“传入setInterval函数的返回值”); //清除setTimeout设置的定时器 *** js的dom对象document.getElementById(“id号”);
docuemnt.getElementByTagName(“标签名(input)”); //返回的也是一个对象集合。window.opener(); //得到创建这个页面的父页面。 **dom对象
<meta http-equiv=”content-type”content=”text/html charset=utf-8″/>
gsggs
gsggs
gsggs
//在末尾添加结点
function add(){
//获取到ul标签
var ulid=document.getElementById(“ulid”);
//创建标签
var li1=document.createElement(“li”);
//创建文本
var text=document.createTextNode(“gddsag”);
//把文本加到li1节点之下
li1.appendChild(text);
//把节点li1加到ul之下
ulid.appendChild(li1);
}
</html>**获取标签的属性值1.var input1=document.getElementById(“inputid”);alert(input1.value);alert(input1.getAttribute(“value”));input1.setAttribute(“属性名”,”属性值”); 总结:内容很多,后期继续分享,今日到此结束!时间到,告辞!革命尚未成功!同志仍需努力!