JavaScript 基础篇(一)

JavaScript 基础篇(一)
基础篇
Javascript:一、数据类型和值
javascript:允许使用3种基本类型数据--------数字、字符串、布尔值,此外还支持两种小数据类型null(空)和undefine(未定义).
javascript:还支持符合数据类型-对象(object),javascript中对象分两种,一种对象表示的已命名的值的无序集合,另一种表示有 编号的值的有序集合。其实有序集合就是数组(Array)。
javascript:还定义了另一种特殊对象----函数,还有一些javascript定义的一些专用对象(等同C#封装的类一样的概念,直接用就行)
复制代码 代码如下:



Javascript:二、对象
1、对象
复制代码 代码如下:



2、数组
复制代码 代码如下:



3、Null(空)
javascript的关键字Null 是一个特殊的值,它表示无值,null 常被看作对象类型的一个特殊值,即代表无对象的值,当一个变量的值
为null,那么就说明它的值不是有效的(Array,Object,数字,字符串,布尔值), 细节:null 在布尔环境中它转换成false;在数字
环境中转换成0。
4、Undefined(未定义)
在使用一个并未声明的变量时,或者使用了已经声明的变量但没有赋值的变量时,又或者是使用一个并不存在的对象属性是,返回的
就是undefined值,在往后的(命名空间,模块用的还是蛮多,大家要理解),细节:underfined在布尔环境中它转换成false,在数字环境
它会转换成NaN。这一点和null有区别。封装它的对象是Error。
小结:以上内容虽然一看就懂,希望和我一样初学的朋友们,千万不要大意!
JavaScript 基础篇 (二)
基础篇
javascript:变量的声明
以下是几种声明变量的方式
复制代码 代码如下:

var value;
var value,value1,value2;//同时声明多个变量,但是这些变量的值都是undefined
var i = 0,j = 0,k=100;//变量声明,初始化一体。
//如果大家尝试读一个不存在的变量(值)会报错!但是尝试给一个未使用Var声明的变量赋值,javascript
//会隐式的声明改变量,而且声明了的变量还是全局的。细节:所以大家创建变量都尽量使用Var
//变量的作用域(这个问题也容易出,大家要搞明白)

javascript:变量的作用域
这些都是细节,和我一样初学的一定要注意避免!
复制代码 代码如下:

var golbal = "golbal"; //全局变量
var local ="local";
function area()
{
//局部变量的优先级比全局变量的高
var local = "arealocal"
//当函数体内声明的变量名和全局变量名相同时,javascript 会隐藏全局变量
var golbal ="areagolbal";
document.write("local is :"+local + "and golbal is :" + golbal +"
");
}
area();
//输出:local is :arealocaland golbal is :areagolbal

在嵌套的函数里面定义局部变量,效果会怎么样呢?看下面:
复制代码 代码如下:

var hope = "moremoney";
function createmore()
{
var hope = "have more money";//局部
function createmoreto()//嵌套函数
{
var hope = "have more money to much";//局部
document.write("Createmoreto hope is :"+hope +"
");
//输出:Createmoreto hope is :have more money to much
}
createmoreto();//调用
document.write("Createmore hope is :" +hope +"
");
//输出:Createmore hope is :have more money
}
createmore(); //调用

javascript:传值和传址
这里也是比较重要的概念!不要漏了。
复制代码 代码如下:

传值           传址
复制 实际复制的值,存在不同的、            复制的只是对数字的引用。如果通过这个
独立的拷贝。            新的引用修改了数值,这个改变对最初的
                        引用来说也是可见的。
传递 传递给函数的是值的独立拷贝             传递给函数的是对数值的引用,如果函数
对它的改变在函数外没有影响             通过传递给它的引用修改了数值,这个改
                         变也是可见的。       
比较 比较这两个对立的值,通常逐             比较的是两个引用,以判断它们引用的是否
字节的比较,以判断是否相等              是同一个数值。

javascript:基本类型和引用类型
javascript的基本规则是:基本类型通过传值来操作,引用类型通过传址来操作。(什么事值类型,或者什么事引用看我上一篇)
复制代码 代码如下:

按值传递
var value = 1;
var copyvalue = value; //将value赋给另一个变量
function addTotal(total,arg)
{
total+= arg; //total = total + arg 效果等同
}
//调用函数,传两个参数(大家可能会认为这个函数改变了全局变量的值,其实没有,函数用的也是对立拷贝)
addTotal(value,copyvalue);
if(value == 1) copyvalue = 2;
document.write("total \t" + value + "and copyvalue \t\t" + copyvalue+"
");
//最后输出:total 1and copyvalue 2

复制代码 代码如下:

按址传递
var array = new Array("Javascccp");
var objarray = array;
function modifyArray(arr)
{
arr[0] = "JAVASCRIPT";
}
//没调用函数前
document.write(array[0] +"
");
//输出Javascccp;
//调用函数后
modifyArray(array);
document.write(array[0]+"
");
//输出大写JAVASCRIPT
//通过修改objarray会是一样的效果
objarray[0] = "Frank";
document.write(array[0]+"
");
//输出Frank;

小结:上面内容希望大家都不要错过,对学习后面的知识还是很有帮助的!

你可能感兴趣的:(JavaScript 基础篇(一))