首先说下感悟:大致的语法都和Java差不多,主要是变量的类型和比较方式方面稍微有点差别,同时函数方面也有细微的差距。相关的流程控制基本一模一样
明天继续加油
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JavaSrcipt学习</title>
<script type="text/javaScript">
/*多行注释*/
/*
第一天:基本用法说明:一般js写在头标签中,或者单独写文件 虽然写在其他地方也可以 但一般为了规范还是会写在头里面
基本数据类型
number:100-3.15
boolean : true ,false
null
由于JS是弱语言 尽量不要把变量随便赋值,比如name6刚开始是字符型的后续又改成number型的 实际开发中如果经常这么变 会造成很多歧义
*/
// var name="你好";
// var name2="-------javascript";
// var name3="111",name4="111",name5="111";
// var name6=name+name2;
// alert(name6);
// name6=16;
// alert(typeof name6);
/*
第二天:运算符
算数运算符 + - * / %
逻辑运算符 && || !
关系运算符 > < == !=
自增a++ a--
// 1.任何类型的数据与字符串进行加法运算时均按拼接处理
// var day21="你好";
// var day22="胡艳华";
// alert(day22+day21);
// var day23="你好啊"+true;
// alert(day23);
// var day24="你好啊"+undefined;
// alert(day24);
//2 任何数据与字符串作相加运算外、会转成整数进行,如果其中有一个为非整数,那么结果还是NAN NAN代表not a number;
//3 boolean 类型的true做运算时转换成1 false做运算时转出0
//4 null 作运算转0 undefined 转NAN
//5 强制类型转换
通过方法boolean()进行数据类型强制转换 将数据转成boolean;
//非0 数字转Boolean都为true
//空字符串转Boolean是false 非空字符串都是true
//null undefined Boolean强转都为false;
通过方法Number()将别的数据类型转数字
//ture 1 false 0
//纯数字字符串 就是对应的值 非数字字符串 转成NAN
//null 0 undefined NAN
通过方法parseInt()
//兼容number所有功能 但可取整
通过方法parseFloat()
*/
// var day25="1";
// var day26=1-day25;
// var day27="a";
// alert(day26);
// alert(day25-day27)
// var tem=Boolean(0);
// alert(tem);
// var tem=Boolean(1);
// alert(tem);
// var tem=Boolean(-1);
// alert(tem);
// var tem=Boolean("");
// alert(tem);
// var tem=Boolean("1234");
// alert(tem);
// var tem="20a";
// alert(Number(tem));
// alert(parseInt(tem));
//除0时 Infinity 无穷大
// var num1=10;
// alert(10/0);
// //-Infinity 无穷小
// alert(-1/0);
/*
第三天:表达式
运算符合操作数组成的式子。
看表达式:
1:看他的功能
2:表达式的值
字符存储采用的Ascll码值
js字符串比较 实际是逐位比较字符串也就是常说的字典序
若是两个基本的数值类型字符串 那么比较的就是彼此的值
操作数与boolean比较时 遵循的依旧是专值比较 true 为 1 false转 0
NAN !=NAN
== 两个等 恒等 ===三个等 恒等且类型相等
*/
// alert(1==0);
// alert(1==true);
// alert(0==false);
// alert(20==="20");
/**
第四天:
常用非判断
空串实际代表的是false 取! 是true
有值串代表的true 取! 是false
1代表的意思是true 取! 是false
0代表的意思是false 取! 是true
infinity 是true 取! 是false
NaN 是false 取! 是true
undefined 是false 取! 是true
*/
// alert(!"");
// alert(!"a");
/**
简单if-else分支
三目运算符 --简单的if- else可用三目运算符简化代码
1==1?alert("aaa"):alert("bbbb");
*/
// if (1==1) {
// alert("哈哈我进来了");
// }else{
// alert("我是假的进不来");
// }
/**
switch简单
一般来将 超过三层我们不用if else
default一般不省略
一般需要把出现概率较高的放在前面 程序运行的效率会高一些。
*/
// var grade = "A";
// switch(grade){
// case "A":
// alert("AAAA");
// break;
// default:
// alert("这是默认分支");
// break;
// }
/**
while循环及for循环
*/
// var i=100;
// while(i>0){
// if (i%5==0) {
// document.write(i+"<br/>");
// if (i==80) {
// break;
// }
// }
// i--;
// }
// for(var i=100;i>0;i--){
// if (i>2){
// continue;
// }
// document.write("aaa");
// document.write("<br/>");
// }
/**
基本函数使用
无参方法使用
有参方法使用
未知参数个数方法使用
函数返回值
函数作用域
*/
// function getParam(){
// alert("123");
// }
// getParam();
// function getNParam(n,name){
// for (var i = n; i >= 0; i--) {
// alert(name+"--"+i);
// }
// }
// getNParam(2,"我是参数");
// function getNoParam() {
// for (var i = arguments.length-1; i >= 0; i--) {
// alert(arguments[i]);
// }
// }
// getNoParam("1","2","3");
// function getReturn(param) {
// param++;
// return param;
// }
// alert(getReturn(1));
//全局变量
// var temp=10;
// function tempfun(temp) {
// // 局部变量--若传入的全局变量参数和局部变量重名,具体调用的时候采用的是就近原则
// var temp=5;
// alert(temp);
// temp++;
// }
// alert(temp);
// tempfun();
// alert(temp);
</script>>
</head>
<body>
<h1>加油</h1>
<p>I Am Comming ---Web</p>
</body>
</html>