JavaScript
1 java脚本 错误
EAMCScript
2 不简单
3 JavaScript 解释型语言
c c++ 编译型语言
javascript 解释型语言
解释器
java 先编译 在解释 ---- 跨平台
4 浏览器(解释器)
javascript 运行在浏览器中
javascript ---> html --- 运行在浏览器中
javascript 存在浏览器差异
js
5 javascript 语法错误 难找
------------------------------------------------------
JavaScript
1 全面支持unicode编码
java也是全面支持unicode编码
public class Person{
}
public class 人{
private String 年龄;
}
2 弱数据类型编程语言
强数据类型编程语言 java
String name = "suns";
int age = 10;
定义变量时必须明确指定变量类型 --- 强数据类型编程语言
定义变量时不需要指定变量类型 --- 弱数据类型的编程语言
var name = "suns";
var age = 10;
var b = true;
3 javascript代码结构
java:
public class Test{
public static void main(String args[]){
}
}
Test t = new Test();
javascript:
<head>
<script type="text/javascript">
</script>
</head>
document.writeln("hello world");
页面输出文本内容 同时可以输出标签
window.alert(""); 报警对话框
window对象可以省略
-------------------------------------------------------
javascript语法
1 数据类型
1)简单类型
1 数字类型
10
12.2
2 字符串
java 'abc' "abc"
javascript "" ''
3 布尔
true false
1 0
!null null
var name = "suns";
if(name){
alert("xxx");
}
4 特殊
undefined 未定定义
如果变量没有赋值进行使用,
如果变量没有定义进行使用,
那么这个变量的值是undefined
var name;
alert(name);
alert(name+"suns");
null 空
var name = null;
NaN Not A Number
"suns"/5 ----> NaN
"5"/5 ---> 1
2)对象类型
Object
Function
Array
String
Date
Math
Exception
注意: 1 javascript允许重复定义变量名字
变量的值 以最后一个值为准
2 javascript出现多个同名变量
以非undefined的那个变量的值为准
3 定义变量时可以省略var
但是所定义的变量为全局变量
4 javascript 可以不为每行语句加入;
解释器自动加入
<script type="text/javascript">
var name = "suns";
name = "suns";
function add(){
var name = "suns";
name = "suns";
}
</script>
2 运算符
1 赋值运算 =
var name = "suns";
2 算术运算符
1 + - * / %
2 += -= *= /=
a+=2 a = a+2;
3 ++ --
i++ ++i
i=0
var a = i++ i=1 a=0
var a = ++i i=1 a=1
注意: 字符串 "10"+10 ---> 字符串
parseInt("") ---- 整数;
parseFloat("") ---- 小数 ;
3 比较运算
> >= < <= == !=
== 值
=== 类型 ,值
4 逻辑运算
&& || !
5 3目运算
(1>3)? alert("ok"):alert("error");
3 表达式
由运算符 和 变量 所构成的语句
var i = 10;
var j = 20
i+j;
i>j
4 流程控制
3种
1 顺序流程
2 条件流程
if(){
}
if(){
}else{
}
if(){
}else if(){
}eles{
}
java: byte short int char
char i = 'a';
char i = 97 ;
javascript 数字,字符串
switch(){
case xx:xxx break;
default:
}
3 循环流程控制
while(xx){
xxxx
}
java:
for(int i=0;i<10;i++){
}
javascript
for(var i=0;i<10;i++){
}
do{
}while();
----------------------------------------------------
javascript对象类型的数据
Function 函数 --- Java方法
java方法
public int add(int i , int j){
return i+j;
}
1通过function关键字定义函数
function add(i,j){
var result = i+j;
return result;
}
function add(i,j){
reutrn i+j;
}
2通过"构造"函数创建函数 (函数直接量)
var fun = new Function("i","j","return i+j;");
fun(1,2);
3匿名函数
var fun = function(i,j){
return i+j;
};
fun(1,2);
注意:
1 函数关键字 定义的函数 也是可以存储在变量内部
function add(i,j){
return i+j;
}
//存储函数
var fun = add;
//存入函数的运算结果(返回值)
var fun1 = add(1,2);
2 javascript 没有函数的重载
java重载
在一个类中,可以定义多个方法名字一直
但是参数表不同的函数
3 arguments[]
能够获得 函数当前运行的实际参数值
function add(i,j){
argments[0]
argments[1];
}
4 typeof 准确获得简单数据类型
var i = 10;
typeof i ----> number
var i = "suns";
typof i ----> string
var i = true;
typeof i ---- boolean
var o = new Object();
var f = new Function();
typeof o --- object
typeof f --- object
5 function add(){
alert("add");
}
function del(f){
f();
}
------------------------------------------------------
Object 类型的数据
概念:1 javascript中没有类 只有对象
2 javascript只有属性没有方法
3 javascript 3获得方式
a) new Object()
b) JSON
c) 一切HTML标签 都是javascript对象
1 java中创建对象
public class Student{
private String name;
private String sex;
方法
}
new Student();
javascript创建对象的第一种方式
* javascript对象中不能定义方法
var student = new Object();
student.name = "suns";
student.sex = "male";
student.age = 10;
student.show = function(){
alert("show");
};
student.show();
this关键字
var person = new Object();
var account = new Object();
* javascript创建对象的第二种方式
JSON 方式创建对象
var student = new Object();
student.name = "suns";
student.getName = function(){
return this.name;
}
var student = {
name:"suns",
sex:"male",
age:10,
getName:function(){
return this.name;
}
};
alert(student.name);
* javascript对象
一切html标签 也是javascript对象
<input type="text" name="name"/>
inputObject.type ="text"
.name ="name"
<table border="" cellpadding="" cellspacing="">
-----------------------
Array 数组
java数组
int[] i = new int[12];
i[0] = 10;
i[1] = 12;
数组
1 java数组只能存储特定类型的数据
特例
Object[] i = new Object[12];
2 数组一经初始化 数组长度固定
javascript ---》Java ArrayList
1 可以存储所有类型的数据
2 可扩充
3 数组的长度以最大的下标决定
没有数值的位置 其值为undefined
第一种 构造函数的方式创建
var a = new Array();
a[0] = 10;
a[1] = "suns";
第二种 JSON
var a = [10,"suns"];
length 数组长度
数组的常用方法
pop(); 从数组中删除最后以一个元素
push(param); 往数组中加入最后一个元素
shift(); 从数组中删除第一个元素
unshift(param); 往数组中插入第一个元素
reverse(); 翻转数组内容
join(); 可以通过一个分隔符把数组中
的元素连接成一个字符串
var a = [1,2,3,4,5];
var string = a.join("-d-");
1-d-2-d-3-d-4-d-5
sort(); 排序
字符逐位对比
------------------------------------------
1 复习
2
*
***
*****
3 List<Use> users = new ArrayList<User>();
u.id = 10;
u.name = "suns";
u.sex = "male"
u1.id = 10;
u1.name = "suns";
u1.sex = "male"
u2.id = 10;
u2.name = "suns";
u2.sex = "male"
JSON [] {}