function test1(){
//alert("nihao");
//1.区分大小写
var test = "Hello";
var Test = "World";
//alert(test+Test);
//2.可以这样声明
var message="hi",num=3;
//alert(message+num);
//3.ECMA 建议采用驼峰法命名,与其源代码风格保持一致
//4.ECMA 5中基本类型:undefined,string,object,number,boolean,null
//5.typeof 可以获取某个变量的类型
//alert(typeof message);//string
//alert(typeof num);//number
//如果没有初始化呢?
var A;
// alert(typeof A);//undefined
//如果每没有声明呢?
//alert(typeof B);//也是undefined
//如果直接alert一个没有声明的变量 Chrome没有任何反应
//还有一个更奇葩的
//alert(typeof null);//object null 指向一个空指针对象
//5.Boolean true false 对的 True False 不对 true,flase 是 Boolean的字面值
//Boolean 与 boolean 也不同
//boolean flag = true; 明显中了java的毒
var flag = true;
var flag2 = Boolean(message);
// alert(flag2);//true 有一个转换规则对应表 可查阅
//6.Number 可整数可浮点甚至还可字符
//可表示八进制 十六进制
var eight = 0123;
var sixteen = 0x3A;
//alert(eight);//83
//alert(sixteen);//58 弹出十进制数
//表示范围并不是那么广
//NaN: not a number
//alert(4/0);//infinity 超出表示范围
//alert(isFinite(4/0));//flase
//alert(isNaN(23));//false 是一个数字
//alert(isNaN("23"));//可以转成一个数字
//alert(isNaN("blue"));//不能被转成数字
//alert(isNaN(blue));//没有东西输出
//alert(isNaN(true));//false 可以转成数值
//数值转换 Number()
var num1 = Number("hello");
//alert(num1);//NaN
var num2 = Number("11");
//alert(num2);//11
//alert(Number("11"));
var num3 = Number(true);
//alert(num3);//1
//parseInt() 转成整数 使用较多
//parseFloat 转浮点 科学记数法
//String
var string1 = "hello";
//alert(string1.length);//5
string1 = "world";
//alert(string1); //会把之前那个销毁
//toString()转字符串
//Object 和 java 对象很相似
//都一个共同的父类Obejct ,这个父类还有些写好了可直接继承
//各种操作符 和 语句先省略 以后遇到再补充吧
}
function func(){
//alert("func");
//函数内部 return; 意思是返回undefined,一般用在需要停止函数但是不需要返回值的情况
//cc("hh");// hhundefined
//相对于其他语言 ,参数管得比较宽松,声明两个参数,可以只传一个参数值
//实际上解释器并不care你声明 调用时的参数情况,因为无论在那种情况下,都会有一个参数数组arguments
//声明时写下参数名 只是为了程序员好辨识
//testLength();//0
//testLength(12);//1
//testLength("ee",33);//2
//mix(10,5);//20 说明还是以自定义优先的
//函数重载 = 函数重写?
//JAVA 重载,用同一个函数名,只要参数类型和数量,返回值中一个以上不同,他们就是不同的函数
//但是ECMA 函数参数管理试很松的 不能用参数来定死一个函数,所以没有传统意义上的重载
//但是可以用巧妙地方法间接实现重载,那就是在函数中判断参数的情况,根据不同参数采取不同方案
};
function cc(arg0,arg1){
alert(arg0+arg1);
};
function cc(){//函数名可以相同 自动匹配参数 ?错! 如果遇到函数名相同的情况,以最后定义的那个为准
alert(arguments[0]);
//alert(arg0+arg1);
};
function testLength(){
alert(arguments.length);
};
//自定义参数名 和 系统arguments 可以混合使用!
//他们占据不同的内存空间 不过会实时同步
function mix(arg0,arg1){
arg1 = 10;
alert(arguments[0]+arguments[1]);
}
window.onload = test1;
window.onload = func;
javascript1-基本概念
最新推荐文章于 2023-08-08 16:43:19 发布