javascript && php &&java 轰炸!!!
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
.
'<br/>'
;
函数区别:
在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)); //abcd12345
split()方法切分字符串与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个字符 gdg
document.write(str1.substring(3,5)); //从第三位开始截取,截取到第五位结束,但不包含第五位。
如果要寻找的字符不存在,则会返回-1. //45
concat()方法对于数组的连接也同样适用。
var arr=[1,2,3,5];
//按照某一个标记来分割数组。
document.write(arr.join("-")); //1-2-3-5
push()方法向数组末尾添加元素。
pop()方法删除数组中的一个元素,并返回被删除的元素值。
reverse()方法经数组数据倒转
js的math对象:
Math.ceil(10.7) //向上舍入 无论小数点后是几,都取11
floor() //向下舍入 无论小数点后是几,都取10
round() //四舍五入
random() //返回0-1之间的随机数
Math.random()*10 //表示返回0-10之间的随机数
pow(x,y)表示x的y次幂
eval()函数可以直接使用,用于执行js代码。
例:var str="alert ("1234568");";
eval(str); //1234568
encodeURI(); 对字符进行编码
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)); //0
bom对象
screen.width screen.height
location.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对象
<html>
<head>
<meta http-equiv="content-type"content="text/html charset=utf-8"/>
<ul id="ulid">
<li>gsggs</li>
<li>gsggs</li>
<li>gsggs</li>
</ul>
<input type="button"name="button"value="添加"onclick="add();"/>
<script type="text/javascript">
//在末尾添加结点
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);
}
</script>
</head>
</html>
**获取标签的属性值
1.var input1=document.getElementById("inputid");
alert(input1.value);
alert(input1.getAttribute("value"));
input1.setAttribute("属性名","属性值");
总结:内容很多,后期继续分享,今日到此结束!时间到,告辞!
革命尚未成功!同志仍需努力!