“小白,js的基本语法都看了吧!”
“看了,变量、函数知识我都看了,原来JS是一种弱类型语言,定义的时候不用声明他是什么数据类型,给变量赋什么类型的值,变量就是什么数据类型。函数就更简单了,直接使用function 函数名(){函数内容}就可以了!你看我写的这段代码!两个alert输出都是a+b的值11”
a = 5; b = 6; function addnum(a,b) { return a+b; } alert(a+b); alert(addnum(a,b));
“小白,代码写得没有问题,但是需要注意两点,我们写js代码的时候习惯把<script>标签放到body标签的后面,在一个就是以后不要用alert了,这个太影响体验”
“alert不就是js的输出函数么?不用alert用什么?”
“用控制台输出console.log(),你的代码我给你改一下,稍等!”
a = 5; b = 6; function addnum(a,b) { return a+b; } console.log(a+b); console.log(addnum(a,b));
“好了,你chrome浏览器中打开看一下!”
“什么都没有啊”,小白失望的说!
“哦~你需要打开chrome的开发者工具,打开以后就可以看到控制台输出了!”
“哇!再也不用鼠标点讨厌的弹框了,js我就需要注意这些么?”
老朱一本正经的说道:“这样吧!我跟你说一下js里面涉及的一些关键知识点,说完以后你自己对应每个知识点再强化了解一下!”
“JS里面的数据类型都是弱类型,也就是说给变量什么类型的值,这个变量就是什么类型。”
“JS里面的表达式是顺序执行的!也就是说执行完第一行在执行第二行,以此类推!”
“JS的函数定义不分前后,哪怕你在页面的最后一行定义函数,在第一行照样可以调用!”
“JS中定义一个变量如果前面不加var它就是一个全局变量,无论你在函数内还是函数外都是全局的,这是很可怕的,所以你定义变量的时候一定要有一个在变量前面加var的习惯!”
“JS中除了数字、字符串、布尔这几个简单的数据类型是值类型外其他的数据类型都是引用类型的!什么意思呢?如果是数字类型a=3;b=a;b=2;输出a和b的值,肯定是a=3,b=2这是一个很简单的道理!”
“如果是引用类型,比如一个数组a=[0,1];b=a;b[0]=8;输出结果是什么?”
小白不加思索的答道:“a是0,1,b是8,1呗,很简单啊!”
“错了,小白,数组是引用类型,什么事引用类型呢,就是两个变量名共同指向一个内存存储区域,改变其中一个的值,另一个也会随着改变,所以上面输出的结果是,a为8,1,b也是8,1”
“在做js程序设计的时候引用类型会经常用到,很多人经常把引用类型当成值类型处理,导致出错都找不出问题出在哪儿!,另外再问你一个问题如果上面的代码改成这样的代码输出什么?”
查看演示
“a是8,9,b是8,9?”
“又错了,应该a是0,1,b是8,9,可能你会问,不是引用类型么?怎么又变成值类型了。其实这里很好理解,这里b=[8,9]是让b重新指向了一个存储数组的区域,而之前我们只是更改对应数组的值而已!关于引用类型我改天专门给你讲一下,你现在有个印象就可以了!明天我们把jQuery引入进来,看看jQuery怎么控制页面中标签的属性。”