传智播客学习之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 相关文章推荐
javascript学习笔记(十) js对象 继承
Jun 19 Javascript
jQuery插件实现屏蔽单个元素使用户无法点击
Apr 12 Javascript
js实现仿Windows风格选项卡和按钮效果实例
May 13 Javascript
Bootstrap每天必学之按钮
Nov 26 Javascript
AngularJS 基础ng-class-even指令用法
Aug 01 Javascript
Bootstrap导航条鼠标悬停下拉菜单
Jan 04 Javascript
bootstrap输入框组使用方法
Feb 07 Javascript
Bootstrap面板(Panels)的简单实现代码
Mar 17 Javascript
jQuery实现的页面遮罩层功能示例【测试可用】
Oct 14 jQuery
video.js 实现视频只能后退不能快进的思路详解
Aug 09 Javascript
js实现简单掷骰子效果
Oct 24 Javascript
前端使用crypto.js进行加密的函数代码
Aug 16 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 mysql数据库操作类
2008/06/04 PHP
PHP实现获取FLV文件的时间
2015/02/10 PHP
php判断数组中是否存在指定键(key)的方法
2015/03/17 PHP
解析WordPress中的post_class与get_post_class函数
2016/01/04 PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
2020/03/24 PHP
动态调用css文件——jquery的应用
2007/02/20 Javascript
通过javascript的匿名函数来分析几段简单有趣的代码
2010/06/29 Javascript
jQuery简单实现input文本框内灰色提示文本效果的方法
2015/12/02 Javascript
JavaScript iframe数据共享接口实现方法
2016/01/06 Javascript
Bootstrap输入框组件使用详解
2017/06/09 Javascript
详解在vue-cli项目中安装node-sass
2017/06/21 Javascript
微信小程序商品到详情的实现
2017/06/27 Javascript
深入解析nodejs HTTP服务
2017/07/25 NodeJs
Linux Centos7.2下安装nodejs&amp;npm配置全局路径的教程
2018/05/15 NodeJs
vue 中swiper的使用教程
2018/05/22 Javascript
Egg.js 中 AJax 上传文件获取参数的方法
2018/10/10 Javascript
Vue项目安装插件并保存
2019/01/28 Javascript
vue单页面在微信下只能分享落地页的解决方案
2019/04/15 Javascript
详解从vue-loader源码分析CSS Scoped的实现
2019/09/23 Javascript
Tensorflow使用支持向量机拟合线性回归
2018/09/07 Python
对python捕获ctrl+c手工中断程序的两种方法详解
2018/12/26 Python
PIL对上传到Django的图片进行处理并保存的实例
2019/08/07 Python
简单介绍python封装的基本知识
2019/08/10 Python
wxPython绘图模块wxPyPlot实现数据可视化
2019/11/19 Python
Python tensorflow实现mnist手写数字识别示例【非卷积与卷积实现】
2019/12/19 Python
Python 实现打印单词的菱形字符图案
2020/04/12 Python
python requests库的使用
2021/01/06 Python
犹他州最古老的体育用品公司:Al’s
2020/12/18 全球购物
数控专业应届生求职信
2013/11/27 职场文书
大学生入党思想汇报
2014/01/14 职场文书
超市创业计划书
2014/09/15 职场文书
运动会广播稿200米(5篇)
2014/10/15 职场文书
小兵张嘎观后感300字
2015/06/03 职场文书
2019银行竞聘书
2019/06/21 职场文书
详解Mysql 函数调用优化
2021/04/07 MySQL
JS前端轻量fabric.js系列之画布初始化
2022/08/05 Javascript