黑马程序员 javascript基础

---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------

 

 

JavaScript 是在浏览器端执行的语言,它可以在浏览器里执行一些计算,判断。

JavaScript是一种解释型语言,无需编译就可以运行,这样哪怕有语法错误,没有语法错误的地方还可以运行  C#是一种编译型的语言,只有编译了才可以运行

 

 

1.      

 像定义一个  内联的样式一样,一般的我们把javaScript代码写在<head>标签里,也可以写在<body>标签任意位置,可以出现任意个 <script>标签

例:<head>

                    <script   type=”text/javascript”>

                             alert(new Data().toLocaleDataString());  //弹出一个当前时间的对话框

                    </script>

</head>

 

 

  javaScript 代码同样可以像 CSS文件一样,写在一个单独的javaScript文件中,然后在<head>标签里 引用

 <head>

         <script  src=”test.js”  type=”text/jacascript”> 

</script>

</head>

 

 

 

2.       事件

点击超链接 弹出对话框

  例子:

<a href=”javascript:alert(‘hello’)" >点点</ a>            //这里在超链接里超文本引用的方式是一种特例

<a href=”1.htm” οnclick=”alert(‘hello’) ">点点</a>   //点击后弹出对话框

 

3.      

 javascript弱类型语言,声明变量时用 var  i = 0;不能像C#中像 int i= 0;那样区分数据类型; 赋值时可以给变量赋值null(空) 或者 undefined(没有指向任何对象),声明变量的时候不写var 那么那个变量就是全局变量(不推荐使用)

 声明变量后,变量指向什么类型 那么变量就变成什么类型,所以 var i= 10 i= “abc” 是正确的

 

 

 

4.      

 

         javascript调试与排错

错误提示:IE—>工具-àInternet选项-à高级-à禁用脚本提示

调试:把要调试的页面设为起始页,然后设置断点,再调试

 

 

5.      

         判断变量是否初始化一般用

Var x;

If(!x) (alert(‘x’);)     //判断变量是否初始化

 

6.      

   函数  不需要定义函数返回值类型,参数类型,定义函数以 function开头

function  addi1i2{

return i1+i2

}    这里没有分号

注意javascript 定义函数的时候第一个花括号紧跟在函数的末尾

函数如果没有返回值,那么默认是  undefined

 

 

 

匿名函数 

var f1=function(i1,i2){

return  i1+i2;

};  //注意,这里有分号 而直接声明函数的时候 没有分号 

alert(f1(2,3))

 

 

alert(function(i1,i2){return i1+i2}(10,10) ;   //直接声明一个匿名函数 立即使用

 

 

 

 

7.      

          javascript中没有类的语法,是用函数模拟出来的。  声明一个函数,当成类用

function Person(name,age){

this.Name = name;

this.Age = age;

this.SayHello=function(){

           alert(“你好,我是”+this.name+”我今年”+this.age+”岁了!”);

}

}

Var p1=new Person(“tom”,20);   //注意这里是让一个变量指向new出来的对象

p1.SayHello();

p1.Sex = “”;           //这里在定义类的外面动态的添加了属性

alert(p1.Sex);

必须要声明类名,function Personname,age)可以看做是声明构造函数Name,Age这些属性也是使用者动态添加的。也就是说 函数定义的外面还可以自由添加属性

 

 

 

8.      

           javaScript中的 Array对象就是数组 他是一个动态的数组,大小不固定。 使用前先new一个对象,让一个变量指向该数组,然后 可以通过 索引[下标]的方式访问

例子:

       var names  = new Array();

names[0] = “tom”;

names[1] = “jim”;

names[2] = “xiaolan”

for(var i = 0; i < names.length; i++){

alert(names[i]);

}

 

Javascript中的  数组元素反转函数 reverse,, 将数组用分隔符连接成一个字符串的函数  join

  

JavaScript中的Array既是数组,又是 字典,还是 stack  

例子: 

     var pinins = new Array();

              pinyins[“”] = “ren”;   //设置key和值

              pinyins[“”] = “kou”;

               pinyins[“”] = “”; 

    alert(pinyins[“”]);   //通过key打印值

     alert(pinyins.);   //可以像属性一样用,但不推荐,让人迷惑。实际上它不是属性

 

当字典用的时候, javascript中也可以像C# foreach遍历那样遍历但是JS中没有foreach关键字,它用的是for,遍历出来的是key  例子: for(var key  in  pinuyins){alert(key)}

 

 

   通过上下2个比较,可以发现,JS中数组用法其实是字典的一个特例,如果遍历数组用法会发现打印出来的是数组的下标,数组的下标可以看做是字典的int型的 key

 

 

 Array的简化  

数组用法简化

var arr = [3,5,6,8,9]   //普通数组用法,(注意这里是 方括号)

可以看成是pinyins[“”]= “ren”;的特例,也就是key 1 2,3……

字典风格简化 

 var arr={“tom”:30,”jim”:20}         //前面是key后面是值 (这里是 花括号)

 

 

9.    

    可以用 for遍历对象的所有成员(属性和方法)

例子:

var  p1  =  new object();   //new一个object类型的对象,让变量p1指向他

p1.Name = “tom”;      //动态的添加属性和方法

p1.Age = 30;

p1.SayHello = function(){alert(“hello”);}

for(var  e  in   p1){ alert(e);}   //遍历p1这个对象的所有成员

 

 

 

 

---------------------- Windows Phone 7手机开发.Net培训、期待与您交流! ----------------------
详细请查看:
http://net.itheima.com/

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值