传智播客学习之JavaScript基础篇


Posted in Javascript onNovember 13, 2009

一、JavaScript与java的区别
1.JavaScript是Netscape公司的产品,Java是Sun公司的产品。
2.JavaScript是基于对象,Java是面向对象。
3.JavaScript只需解释就可以执行,Java需要先编译成字节码文件,再执行。
4.JavaScript是弱类型,Java是强类型。
小结:其实java与JavaScript除了名字上有些像以外,然后JavaScript借用了部分java思想外,其余别的几乎没有什么关系。
二、如何将JavaScript与Html的结合
1.标签形式
我们将JavaScript代码存放在标签对<script>...</script>中。可以放在任何位置。
2.导入方式
使用script标签的src属性引入一个JavaScript文件。
例如:<script src=”test.js” type=”javascript”></script>
注意:规范中script标签中必须加入type属性。
三、JavaScript语法
1.变量
通过关键字var来定义,由于是弱类型,所以不用指定具体的数据类型。
例:var x = 3; x = “hello”;
注意:1)在JavaScript中单引号和双引号没有区别,但是最好写双引号,规范。
2)在JavaScript中特殊的常量值:undefined,当变量没有初始化就被使用,该变 量的值就是undefined(未定义)。
2.运算符
与其他编程语言一样,与java类似。也支持字符串连接符(+)以及三元运算符(? :),不同的是三元运算符不需要有值,可以直接在语句输出等。
3.语句
语句格式与各种编程语言差不多,也有判断,选择以及循环。但是注意一下几点:
1)在JavaScript中非0 为真。例如下面代码
var x = 3;
if(x==4)//可以进行比较运算。
if(x=4)//可以进行赋值运算,而且可以同样进行判断。不报错。结果为true,所以在if语句后可以倒过来写if(4==x),这样如果写成4=x会报错。可以纠正错误。
2)switch里面没有类型限制
3)循环一定要有结束条件
4)连接boolean运算,一定要用&&或者||,如果用&或者|会进行位运算
四.函数
1.一般函数
格式:
function 函数名(形式参数...)
{
执行语句;
return 返回值;
}
注意:1)return语句可以不写,函数一定要被调用才会运行。
2)形式参数没有必要加var,是弱类型。
3)调用有参数的函数,但没有给其传值,或传多于参数个数的值,函数一样可以运 行,或者调用没有参数的函数,给其传值,该函数也一样运行。
4)JavaScript中没有重载函数形式
因为在JavaScript中实际将函数的多个参数封装在一个arguments数组中,所以可以接受任意多个参数,但是最好还是按定义好的形式参数传递实际参数。
5)注意下面的例子
var show = demo();
上面这条语句表示的是show变量接收demo函数的返回值。
var show = demo;
上面这条语句表示的是show与demo代表同一函数,指向同意对象
2.动态函数
通过JavaScript的内置对象Function实现。如下:
var demo = new Function("x,y","var sum = x+y; alert(sum);");
demo(5,2);
动态函数与一般函数不同的是,参数以及函数体都可以通过参数进行传递,可以动态指定。

3.匿名函数
格式:function()
例:var demo = function(){alert("snow");}
demo();
注意:通常在定义事件属性的行为时较为常用。
4.其他形式
var p = new Object();
p.name ="lisi";
p.age=31;
p.demo = show;
alert(p.name +":"+p.age+demo(4,5));
function show(x,y){return x+y;}
五、数组
在JavaScript中,数组结合了集合的特性,可以存任意元素,长度也是可变的。而且在赋值的时候不是大括号而是中括号,如下:
var arr = new Array();
arr[0] = “ashf”;
arr[1] = 258;
或者var arr = [“ashf”,258,true,'sfa'];
注意在遍历的时候不要int x了,要var x,弱类型。
二维数组: var arrr = [[元素,元素....],[元素...],[元素....].....]
六、内置对象
在JavaScript中,内置了很多对象,比如String,Object,Date等,可以查阅相关帮助文档(如有需要,可以留下邮箱),这里主要对部分不同处做简单说明。
1.String中length是属性,不是方法
2.String中substring(a,b)方法是取a到b-1的字符,而substr(a,b)方法从a开始,取b个字符
3.a.toString(b)返回b进制的a形式
4.parseInt("a",b)会将b进制的a转换成十进制形式的a

七、自定义对象
在JavaScript中,除了已经提供的内置对象外,也可以自定义对象。
方式一:
function car(){}
var c = new car();
c.color = "white";
c.tyre = 4;
c.run = show;
function show(){alert(c.color+c.tyre+“run”);}
c.run();
方式二:
function car(color,tyre)
{
this.color = color;
this.tyre = tyre;
}
var c = new car(“white”,4);
alert(c.color+":"+c["tyre"]);
八、用于操作对象的语句
1.with语句
当调用一个对象中多个成员时,为了简化调用,避免”对象.”这种格式的重复书写。
格式:with(对象){ 这里面代码不用加(对象.属性)了 }
var p = new car("white",4);
alert(c.color+":"+c["tyre"]);
可以写成:
var p = new car("white",4);
with(car){alert(color+":"+tyre)};
注意:with语句定义了某个对象的作用域,在该域中可以直接调用该对象的成员。
for...in语句
For 变量in对象 语句:遍历对象中的成员,如果遍历数组,变量里面是脚标
获取对象的值 对象【变量】,变量是属性名

Javascript 相关文章推荐
js 发个判断字符串是否为符合标准的函数
Apr 27 Javascript
javascript动画对象支持加速、减速、缓入、缓出的实现代码
Sep 30 Javascript
JavaScript var声明变量背后的原理示例解析
Oct 12 Javascript
window.open 以post方式传递参数示例代码
Feb 27 Javascript
再分享70+免费的jquery 图片滑块效果插件和教程
Dec 15 Javascript
jQuery中on()方法用法实例详解
Feb 06 Javascript
jquery实现图片随机排列的方法
May 04 Javascript
AngularJS基础 ng-model-options 指令简单示例
Aug 02 Javascript
Vue 2.0的数据依赖实现原理代码简析
Jul 10 Javascript
JavaScript Canvas实现验证码
Aug 02 Javascript
Nuxt页面级缓存的实现
Mar 09 Javascript
小程序实现多个选项卡切换
Jun 19 Javascript
用document.documentElement取代document.body的原因分析
Nov 12 #Javascript
JQuery SELECT单选模拟jQuery.select.js
Nov 12 #Javascript
Jquery操作Select 简单方便 一个js插件搞定
Nov 12 #Javascript
jquery控制listbox中项的移动并排序
Nov 12 #Javascript
Jquery 获取表单text,areatext,radio,checkbox,select值的代码
Nov 12 #Javascript
两个select之间option的互相添加操作(jquery实现)
Nov 12 #Javascript
XHTML下,JS浮动代码失效的问题
Nov 12 #Javascript
You might like
PHP通过COM使用ADODB的简单例子
2006/12/31 PHP
VIM中设置php自动缩进为4个空格的方法详解
2013/06/14 PHP
PHP使用GETDATE获取当前日期时间作为一个关联数组的方法
2015/03/19 PHP
IE FF OPERA都可用的弹出层实现代码
2009/09/29 Javascript
jQuery EasyUI API 中文文档 可调整尺寸
2011/09/29 Javascript
使用Math.floor与Math.random取随机整数的方法详解
2013/05/07 Javascript
JS动态添加Table的TR,TD实现方法
2015/01/28 Javascript
浅析Javascript匿名函数与自执行函数
2016/02/06 Javascript
原生JS封装Ajax插件(同域、jsonp跨域)
2016/05/03 Javascript
jQuery防止重复绑定事件的解决方法
2016/05/14 Javascript
Javascript点击按钮随机改变数字与其颜色
2016/09/01 Javascript
BootStrap tab选项卡使用小结
2020/08/09 Javascript
js上下视差滚动简单实现代码
2017/03/07 Javascript
微信禁止下拉查看URL的处理方法
2017/09/28 Javascript
Javascript中的this,bind和that使用实例
2019/12/05 Javascript
python使用PyGame播放Midi和Mp3文件的方法
2015/04/24 Python
Python基于递归和非递归算法求两个数最大公约数、最小公倍数示例
2018/05/21 Python
Python Websocket服务端通信的使用示例
2020/02/25 Python
Python3.7.0 Shell添加清屏快捷键的实现示例
2020/03/23 Python
Python如何进行时间处理
2020/08/06 Python
浅谈anaconda python 版本对应关系
2020/10/07 Python
python包的导入方式总结
2021/03/02 Python
HTML5 SEO优化的一些建议
2020/08/27 HTML / CSS
匈牙利墨盒和碳粉购买网站:CDRmarket
2018/04/14 全球购物
门卫工作岗位职责
2013/12/17 职场文书
廉洁自律演讲稿
2014/05/22 职场文书
法人代表身份证明书及授权委托书
2014/09/16 职场文书
个人投资合作协议书
2014/10/12 职场文书
2014年高中班主任工作总结
2014/11/08 职场文书
新婚姻法离婚协议书范文
2014/11/30 职场文书
师德标兵先进事迹材料
2014/12/19 职场文书
2015年乡镇环保工作总结
2015/04/22 职场文书
高效课堂教学反思
2016/02/24 职场文书
大学生创业计划书
2019/06/24 职场文书
在Spring-Boot中如何使用@Value注解注入集合类
2021/08/02 Java/Android
Nginx+Tomcat负载均衡多实例详解
2022/04/11 Servers