黑马程序员c#学习15
来源:互联网 发布:什么是java工程师 编辑:程序博客网 时间:2024/06/10 11:23
1、javascript
javascript 是一种在浏览器端执行的语言,它是一种解释性语言,无需编译就可以随时运行。
javascrip可以说是一种弱语言,如果有部分语法错误,并不影响错误部分之前的代码的执行,另外 ,javascrip的变量也是
一种弱类型的,没有像C#中的那些int,double等多种数据类型,javascript中申明变量只有一个var,它可以是任意类型的,它
与c#中的var不同,c#中var一旦赋值后就是一个强类型的了,不能在存储不同类型的数据了,但是js中的var不同,它的数据类
型可以随时更改。这是一个区别。
2、javascript的基本结构
在html文本中书写js代码,基本的结构和我们学过的css文件相同,首先是一个<script type=“text/javascript”>,然后
才是我们的js代码,最后以</script>结束
我们以在head中写js代码为例
<head>
<script type=“text/javascript”>
js代码块;
</script>
</head>
除了将js代码写在html文件中,我们还可以将 js代码也在一个独立的js文件中,然后在html文件中引入这个js文件。
<head>
<script src='文件路径' type=“text/javascript”>
</script>
</head>
注意,js代码可以写在<head>,<body>等任意位置。
js文件的好处在于可以多页面共享同一段代码,减少网络流量 。
3、js事件
html响应事件有方法
<a href="1.html" onclick="js代码">点击</a>
但是超链接是一个特例
<a href="javascript:代码">点击</a> 这里在代码前加入javascript:表示点击超链接后导向的地址是一个javascript代
码,而不是超链接地址。
4、js变量
js中申明变量只有一个var关键字,没有C#中的int,double等关键字,因为js是一种弱类型的,变量的数据类型可以随时更
改而不必担心数据类型不匹配的问题。
js中如果不用var申明变量,而是直接使用,那么这样的变量可以理解为全局变量,不推荐这样使用。
js中字符和字符串都可以用‘’或者“”
js中变量有两种特殊的值,null表示值为空,undefined表示变量还没指向任何对象
js中判断变量是否初始化的三种方法
var i
if(i==null){}
if(typeof(i)=="undefined"){}
if(!i){}
5、js函数
关键字 function
语法 function 函数名(参数名){}
注意与c#的区别,要使用关键字function
不需要写函数返回值类型
参数列表中的参数也不需要写明参数类型
js函数不要求所有路径都有返回值,如果没有返回值,则返回一个undefined。
匿名函数的申明
var f = function(参数列表){};
当我们需要调用这个匿名函数的时候,调用方法为f(参数列表),这里f相当于c#中的一个委托。
6、js中如何实现面向对象
js中使用函数闭包来模拟面向对象中的类这个概念 看一个例子
function person(name,age){
this.Name = name; //动态添加的Name属性
this.Age = age; //动态添加的Age属性
this.sayshello = function(){};//添加的方法
}
var p1 = new person("abc",30);//申明一个p1 new关键字如果省略了就是调用函数,要模拟创建一个类,就必须使用
new关键字
p1.sayhello(); //调用p1的sayhello方法
注意,在使用闭包模拟类的时候,必须要写上“类”名,如上面的person。
我们可以将这个函数看成一个构造函数,
7、js中的array对象
js中的array对象的长度是不固定的,可以随时向array对象中添加数据,此外,array还可以当做一个dictionary来用
不仅可以用数组下标来访问,还可以通过key/value对来访问。
比如 var arr = new Array()
我们除了可以用arr[0] = 1来对arr初始化,也可以使用arr["key"] = value来进行初始化,当我们使用后一种方式来进行
初始化的时,在用for(var i in arr)来循环数组的时候,i取出来的是key值,而不是value值,而且我们还可以通过arr.key
来访问对应的值,不推荐这么使用当然我们使用传统的for(var i=0,i<arr.length,i++){ alert(arr[i])}来循环时,取出来
的还是value而不是key。这是一个要注意的地方。
另外,Array数组对象还可以使用简化的创建方式,
var arr = [1,2,3,4,5,]; 简化创建一个数组
var arr = {"key1":value1,"key2":value2} 简化创建一个字典
Windows Phone 7手机开发、.Net培训、期待与您交流!
- 黑马程序员c#学习15
- 黑马程序员 C#学习1
- 黑马程序员c#学习2
- 黑马程序员c#学习3
- 黑马程序员c#学习4
- 黑马程序员c#学习5
- 黑马程序员c#学习6
- 黑马程序员c#学习7
- 黑马程序员c#学习8
- 黑马程序员 c#学习9
- 黑马程序员 c#学习10
- 黑马程序员 c#学习11
- 黑马程序员 c#学习12
- 黑马程序员 c#学习13
- 黑马程序员c#学习14
- 黑马程序员c#学习16
- 黑马程序员C#学习笔记
- 黑马程序员-c#学习之多线程
- 黑马程序员c#学习14
- repo
- 关于hibernateTemplate的模糊查询
- 8 款精美的 jQuery/CSS3 菜单特效
- ALSA and TinyAlsa
- 黑马程序员c#学习15
- SQL Server 触发器
- java方法的参数传递其二
- nyoj 36 最长公共子序列
- 二叉树链表C++实现
- 黑马程序员c#学习16
- Windows socket之IOCP实例----IOCP开发驾照理论考试系统
- 公司面试经验-前篇
- linux中文输入法的实现