无为清净楼资源网 Design By www.qnjia.com
对于以前很多混淆不清的知识,有必要再梳理一下:就从最基础的变量开始说起。
1.。变量variable
a.全局变量Global Variable 和 局部变量 Private Variable
加var和不加var是有区别的
--》如果不用关键字var,声明一个变量,那么这个是全局变量,任何子函数都可以访问,就算是跳出花括号的地方,亦可被访问;
--》如果使用关键字var,则从所在的“花括号{}”起,全体函数都可以访问该变量,如:
function foo(){
i=8 //Global Variable
alert(i)
}
function foo2(){
var i=88 //在此花括号下都可访问变量i
alert(i);
child()
function child(){alert(i)}
}
foo();foo2()
alert(i) //这里的i还是8
值得注意是function是编译期的对象,必须执行或实例化才能在内存中分配这一变量。
全局变量习惯以_开头;p.s全部变量最好慎用,你很知道这个变量在那里何时发生变化!
-------》参见 js手册:
“尽管并不安全,但声明语句中忽略 var 关键字是合法的 JScript 语法。这时,JScript 解释器给予变量全局范围的可见度。当在过程级中声明一个变量时,它不能用于全局范围;这种情况下,变量声明必须用 var 关键字。”
b.变量的数据类型 the types of variable
Jscript 有三种主要数据类型、两种复合数据类型和两种特殊数据类型。
主要(基本)数据类型是:
字符串
数值
布尔
复合(引用)数据类型是:
对象
数组
特殊数据类型是:
Null
Undefined
下面简述一下JavaScript中的各种对象类型:
Native Object: JavaScript语言提供的不依赖于执行宿主的对象,其中一些是内建对象,如:Global、Math;一些是在脚本运行环境中创建来使用的,如:Array、Boolean、Date、Function、Number、Object、RegExp、Error。
Build-in Object: JavaScript语言提供的不依赖于执行宿主的内建对象,如:Global、Math;内建对象都是Native Object。
Host Object:JavaScript语言提供的任何依赖于宿主环境的对象,所有非Native Object的对象都是宿主对象,如:IE中的window,WScript中的wscript实例,任何用户创建的类。
****如何检查对象类型?******
1.typeof()
typeof 运算符把类型信息当作字符串返回。typeof 返回值有六种可能: "number," "string," "boolean," "object," "function," 和 "undefined."
2. val instanceof Array
返回一个 Boolean 值,指出对象是否是特定类的一个实例。
例如用到检查 数组或日期类型的时候(事实上,任何类型都允许,见例),必须使用instance of + class name(不用引号),例:
function foo(){}
var f = new foo();
alert(f instanceof foo2) //false
3.constructor
constructor 的用法感觉跟instance的用法一样,只不过不返回boolean值
x = new String("Hi");
if (x.constructor == String)
// 进行处理(条件为真)。
*******var i={}是什么类型?****
答案:object类型 等价于var i = new Object
Object对象是一切对象的载体,有点想父类吧
Object 对象很简单,
它就只有两个property和两个method
这两个property是:
prototype
constructor
这两个function是:
toString()
valueOf()
那么var obj = new MyObject()怎么文本化呢?其实也很简单的,obj的文本化定义如下:
var obj =
{
Properties1 : 1, Properties2 : '2', Properties3 : [3],
Method1 : function(){ return this.Properties1 + this.Properties3[0];},
Method2 : function(){ return this.Preperties2; }
};
类实例文本化定义的语法为,用一对"{}"表示类,也就说"{}"完全等价于"new Object()"。然后"{}"内按"key:value"组织属性和方法,key可以是任意[A-Za-z0-9_]的字符组合,甚至数字开头都是合法的@_@,value是任何的合法的文本化JavaScript数据,最后每个键值对用","来分隔就行了。
通常用于JSON交换数据。
*******undefined 的两种含义*****
1.undefined关键字 2.undefined属性
声明了变量,但没赋过值,是属于第一种的情况;
完全没有声明,就跑出一个变量参与运算,它的数据类型是第二种情况;
两个相同名字却不同含义,建议下一版本改名。
var declared; //声明变量。
if (declared == undefined) //改为uninitialized没初始化 会更准确,js is loose language indeed!
document.write("declared has not been given a value.");
if (typeOf(notDeclared) == "undefined")
document.write("notDeclared has not been defined.");
1.。变量variable
a.全局变量Global Variable 和 局部变量 Private Variable
加var和不加var是有区别的
--》如果不用关键字var,声明一个变量,那么这个是全局变量,任何子函数都可以访问,就算是跳出花括号的地方,亦可被访问;
--》如果使用关键字var,则从所在的“花括号{}”起,全体函数都可以访问该变量,如:
function foo(){
i=8 //Global Variable
alert(i)
}
function foo2(){
var i=88 //在此花括号下都可访问变量i
alert(i);
child()
function child(){alert(i)}
}
foo();foo2()
alert(i) //这里的i还是8
值得注意是function是编译期的对象,必须执行或实例化才能在内存中分配这一变量。
全局变量习惯以_开头;p.s全部变量最好慎用,你很知道这个变量在那里何时发生变化!
-------》参见 js手册:
“尽管并不安全,但声明语句中忽略 var 关键字是合法的 JScript 语法。这时,JScript 解释器给予变量全局范围的可见度。当在过程级中声明一个变量时,它不能用于全局范围;这种情况下,变量声明必须用 var 关键字。”
b.变量的数据类型 the types of variable
Jscript 有三种主要数据类型、两种复合数据类型和两种特殊数据类型。
主要(基本)数据类型是:
字符串
数值
布尔
复合(引用)数据类型是:
对象
数组
特殊数据类型是:
Null
Undefined
下面简述一下JavaScript中的各种对象类型:
Native Object: JavaScript语言提供的不依赖于执行宿主的对象,其中一些是内建对象,如:Global、Math;一些是在脚本运行环境中创建来使用的,如:Array、Boolean、Date、Function、Number、Object、RegExp、Error。
Build-in Object: JavaScript语言提供的不依赖于执行宿主的内建对象,如:Global、Math;内建对象都是Native Object。
Host Object:JavaScript语言提供的任何依赖于宿主环境的对象,所有非Native Object的对象都是宿主对象,如:IE中的window,WScript中的wscript实例,任何用户创建的类。
****如何检查对象类型?******
1.typeof()
typeof 运算符把类型信息当作字符串返回。typeof 返回值有六种可能: "number," "string," "boolean," "object," "function," 和 "undefined."
2. val instanceof Array
返回一个 Boolean 值,指出对象是否是特定类的一个实例。
例如用到检查 数组或日期类型的时候(事实上,任何类型都允许,见例),必须使用instance of + class name(不用引号),例:
function foo(){}
var f = new foo();
alert(f instanceof foo2) //false
3.constructor
constructor 的用法感觉跟instance的用法一样,只不过不返回boolean值
x = new String("Hi");
if (x.constructor == String)
// 进行处理(条件为真)。
*******var i={}是什么类型?****
答案:object类型 等价于var i = new Object
Object对象是一切对象的载体,有点想父类吧
Object 对象很简单,
它就只有两个property和两个method
这两个property是:
prototype
constructor
这两个function是:
toString()
valueOf()
那么var obj = new MyObject()怎么文本化呢?其实也很简单的,obj的文本化定义如下:
var obj =
{
Properties1 : 1, Properties2 : '2', Properties3 : [3],
Method1 : function(){ return this.Properties1 + this.Properties3[0];},
Method2 : function(){ return this.Preperties2; }
};
类实例文本化定义的语法为,用一对"{}"表示类,也就说"{}"完全等价于"new Object()"。然后"{}"内按"key:value"组织属性和方法,key可以是任意[A-Za-z0-9_]的字符组合,甚至数字开头都是合法的@_@,value是任何的合法的文本化JavaScript数据,最后每个键值对用","来分隔就行了。
通常用于JSON交换数据。
*******undefined 的两种含义*****
1.undefined关键字 2.undefined属性
声明了变量,但没赋过值,是属于第一种的情况;
完全没有声明,就跑出一个变量参与运算,它的数据类型是第二种情况;
两个相同名字却不同含义,建议下一版本改名。
var declared; //声明变量。
if (declared == undefined) //改为uninitialized没初始化 会更准确,js is loose language indeed!
document.write("declared has not been given a value.");
if (typeOf(notDeclared) == "undefined")
document.write("notDeclared has not been defined.");
标签:
学习YUI.Ext,第三天
无为清净楼资源网 Design By www.qnjia.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
无为清净楼资源网 Design By www.qnjia.com
暂无评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
2024年11月16日
2024年11月16日
- 2019明达发烧碟MasterSuperiorAudiophile[WAV+CUE]
- 蔡幸娟.1993-相爱容易相处难【飞碟】【WAV+CUE】
- 陆虎.2024-是否愿意成为我的全世界【Hikoon】【FLAC分轨】
- 关淑怡.2009-ERA【星娱乐】【WAV+CUE】
- 林忆莲《关于她的爱情故事》2022新世纪MQA 24K金碟限量版[WAV+CUE]
- 张雨生1993《一天到晚游泳的鱼》台湾G字首版[WAV+CUE][1G]
- 群星《试音五大女声》[WAV+CUE][1G]
- 魔兽世界wlk武器战一键输出宏是什么 wlk武器战一键输出宏介绍
- 魔兽世界wlk狂暴战一键输出宏是什么 wlk狂暴战一键输出宏介绍
- 魔兽世界wlk恶魔术士一键输出宏是什么 wlk恶魔术士一键输出宏介绍
- 医学爱好者狂喜:UP主把医学史做成了格斗游戏!
- PS5 Pro评分解禁!准备升级入手吗?
- 我们盘点了近期火热的国产单机游戏!《琉隐神渡》等 你期待哪款?
- 2019年第12届广州影音展双碟纪念版ADMS2CD[MP3/WAV]
- 黄安《救姻缘》台首版[WAV+CUE]