javascript学习-1

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 [] {}




你可能感兴趣的:(JavaScript)