JavaScript 基本语法

1.介绍:

javaScript 是一种可以在浏览器中运行的脚本语言, 主要用来实现在浏览器端的动作(用户交互 和 数据处理)。

html : 内容
CSS  : 显示

JS     : 动作

javaScript源代码放在HTML里头,从服务器下载到本地,在浏览器中运行。

<html>

<body>
<script>
	document.write("hello world!"); //JS代码  document为浏览器页面对象 write为document对象函数
</script>
</body>

</html>
2.语句:

   大小写敏感。

   JS中的语句不要求句尾加分号,但是最好还是加上比较符合编程习惯。

first statement;
second statement;

   分行:反斜杠 \  (如果是拼接字符串的话,句尾就不用加反斜杠了,下一行的首字符为+号就行了)

document.write \
("Hello World");
3.注释:
单行注释://  或  <!--   一般用前者
多行注释:/* */
4.变量的声明和赋值:

  用var声明,表示这是一个局部变量,如果不用var的话,这个变量就是一个全局变量。

  所以,JavaScript中变量不用先声明再使用,但是先声明再使用一个好习惯。

var hello; //hello的变量
hello = "Hello"; //赋值

计算
var age = 16 // 整数和浮点数不区分
document.write(hello + age); //数值转为字符串进行连接
5.数据类型:

   值类型:string, number, boolean, null, undefined.

   引用类型:object,function,Array

   字符串/数值/布尔值:

   字符串用双引号 “ ” 或单引号 ‘ ’ 来表示,需要混用的时候,一般都是双引号里面直接加单引号,双引号要加转义符 \ 。

       var mood ="I'm good,but She said : \" Fuck you \".";

    JavaScript是弱类型的编程语言,所以整数、浮点数、负数的声明方式都和字符串一样,甚至可以这样使用变量:

var tmp = “Love”;
tmp = 33;
tmp = true;

    数组:在声明时可以指定数组的长度,也可以不指定长度(其实指定了也没用,长度可以任意改的)。

var beatles = Array(4) ;   /   var beatles = Array(); // 或者直接省略这句声明,直接用下面那句前面加个var就可以使用了。
beartles = [“gfdsb”,”htr“,”fds“,”123“];

    对象:

    •声明方法1:

var lennon = Object();
lennon.name = "John";
lennon.year = 1990;

    •声明方法2:

var lennon = {
	name: John,
	year: 1990 };

    •声明方法3:

var beatles = {};
beatles.vocalist = lennon; // 把一个对象赋给另一个对象的属性。
6.操作:

   •算数操作 :   +  -   *   /    %(取余)   ++  -- 

   •运算后赋值: +=  -=   *=  /=   %=

   •条件判断:(用于if 、while语句)

      == 、!=、< 、> 、 <= 、 >= 、===(严格相等) 、!==(严格不相等)

   •逻辑判断:

    &&    ||     !  : !(x==y)    

[javascript]  view plain  copy
  1.     var tmp = null;  
  2.      var txt = "";  
  3.      var bln = false;  
  4.      if (0){  
  5.         alert("ok0");  // 不输出 因为值为 0 时判断为false  
  6.      }  
  7.      if (tmp) {  
  8.          alert("ok1");  // 不输出 因为null是一个值为0的对象。  
  9.      }  
  10.      if (txt) {  
  11.          alert("ok2");  // 不输出 因为空的字符串在判断时也算为false  
  12.      }  
  13.      if (tmp == txt){  
  14.          alert("ok3");  // 不输出 因为一个是值为0,一个是值为空  
  15.      }  
  16.      if (bln == tmp){  
  17.          alert("ok4");  // 不输出 因为false != null  
  18.      }  
  19.      if (bln == txt && bln == 0){  
  20.          alert("ok5");  // 输出 因为false == 0 , false == ""  
  21.      }  
  22.      if (bln === txt || bln === 0){  
  23.          alert("ok6");  // 不输出 因为 === 是严格等于,还会同时判断变量类型的。  
  24.      }  

   补充:这里涉及到了null,以后还会专门开专题讲null和undefined的区别。

if(tmp = 12)       //  true
if(tmp = 0)         //  false
if(tmp = "")        //  false
if(tmp = false)   //  false
7.if else 、for 、 while、switch 

    就列个switch的例子吧,没啥好讲的,循环里稍微看下break和continue的区别就好了(和大一学的C语言一样)

[javascript]  view plain  copy
  1. var day=new Date().getDay();  
  2. switch (day)  
  3. {  
  4. case 6:  
  5.   x="Today it's Saturday";  
  6.   break;  
  7. case 0:  
  8.   x="Today it's Sunday";  
  9.   break;  
  10. default:  
  11.   x="Looking forward to the Weekend";  
  12. }  
8.函数及作用域:

函数就是一段代码,javaScript有很多内置函数

	var f = new function(x, y)
	{
		return x+y;
	}
[javascript]  view plain  copy
  1. function square(num){  
  2.     total = num * num;  
  3.     return total;  
  4. }  
  5.   
  6. var total = 50;  
  7. var number = square(20);  
  8. alert(total);  
这段代码会输出400,因为total在方法中被设为全局变量了,所以调用方法以后,值也就随之改变了。

所以这里要尤其注意,正确的方法是方法里的total要加上var 局部变量,这样就不会影响了。

9.数组:
var arr = new Array()
var b = new Array(Size)
var c = new Array(d1, d2, ... dn);
转换数组为字符串
var colors = ["red", "blue", "green"]
colors.toString()
colors.join("11")
10.对象:
对象是javaScript的一种复合数据类型,它可以把多个数据集中在一个变量中,并且给其中的每个数据起名字
或者说对象是一个属性集合,每个属性有自己的类型和值。
构造方法:
function Rect(w, h)
{
	this.width = w;
	this.height = h;
	this.erea = function(){ return this.width * this.height; };
}

   原型对象

 对象的prototype属性指定了它的原型对象,可以用运算符直接读它的原型对象的属性。

11.javaScript与浏览器:

全局对象
1.浏览器的全局对象是window

所有全局的变量实际上是window的成员

	 var answer = 12;
	 alert(window.answer);

2.window.document表示浏览器窗口中的HTML页面

        document.write("将内容写入页面")

3.页面中的元素就是document里的成员

	for(x in document)
	    document.write(x + "<br/>")

事件处理器

    <p onMouseOver = "alert("h1")"> //这个段落当鼠标经过的时候触发

定时器

	function update(){
		if(count > 0)
			status = count--;
	}
	<body onload = setInterval("update()", 1000)>
setInterval() //每隔一定时间调用一个函数

document的成员
anchors[]
forms[]
images[]
cookie
title

html中的页面要有一些动作,则先把这些加上name,方便后面脚本查找


参考: 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值