JavaScript对象,函数,作用域
JavaScript对象
在 JavaScript中,几乎所有的事物都是对象。JavaScript 对象是拥有属性和方法的数据。
var car = {type:"Fiat", model:500, color:"white"};
可以说 "JavaScript 对象是变量的容器"。但是,我们通常认为 "JavaScript 对象是键值对的容器"。
键值对通常写法为 name : value (键与值以冒号分割)。键值对在 JavaScript 对象通常称为 对象属性。
访问方式:car.type; car["type"];
对象方法:
var person = {name : "miki", age : 20, introduce: function(){return "I am" + this.name + this.age;}};
person.introduce();
JavaScript函数
函数是由事件驱动的或者当它被调用时执行的可重复使用的代码块。
语法:
function functionName(){
执行代码
}
可以有参数和返回值
与c#不同的是不用指定返回值和参数的类型。
function sum(a,b){
return a+b;
}
JavaScript作用域
在JavaScript中,对象和函数也是变量。作用域指可访问变量,对象,函数的集合。
局部作用域:变量在函数内部声明,变量为局部作用域。只能在函数内访问。
全局变量:变量在函数外声明,网页中所有脚本和函数均可使用。
注:如果在函数内部没有使用var声明变量,改变量为全局变量。
在HTML中,全局变量是window对象,所有数据变量都属于window对象。
JavaScript预定义的全局函数
parseInt();
parseFloat();
Number();
isNaN();
encodeURI();
URL : Uniform Resource Locator 统一资源定位符/器
URI : Uniform Resource Identifier 统一资源标识符
作用:对URL格式的字符串进行编码,将多字节的字符编码成单字节的字符
注:URL对多字节的字符无效
eval();
作用:计算并执行以字符串方式表示的JS代码
递归函数
自己调用自己
递归的实现:1.边界条件 2.递归前进--继续调用自己 3.递归返回--向上返回数据
function Factorial(a){
if(a==1){return 1}
else{return a*Factorial(a-1)}
}
可简写为
function Factorial(a){
return a==1?1:a*Factorial(a-1);
}
可以将方法体中的函数名更改为 arguments.callee,好处是当函数名更改时,不用更改方法体中的名字。
JavaScript对象,函数,作用域的更多相关文章
- javascript篇-----函数作用域,函数作用域链和声明提前
在一些类似C语言的编程语言中,花括号内的每一段代码都具有各自的作用域,而且变量在声明它们的代码段之外是不可见的(也就是我们不能在代码段外直接访问代码段内声明的变量),我们称之为块级作用域,然而,不同于 ...
- JavaScript之函数作用域
有过类似C语言编程经验的同学应该都知道“块级作用域(block scope)”:花括号内的每一段代码都具有各自的作用域,而且在声明它们的代码段之外是不可见的.而在JavaScript中是没有块级作用域 ...
- 谈谈javascript的函数作用域
在一些类似c语言的编程语言中,花括号内的每一段代码都具有各自的作用域,而且变量在声明他们的代码段之外是不可见的,我们称为块级作用域(block scope),而javascript中没有块级作用域.取 ...
- JS 字符串对象 数组对象 函数对象 函数作用域
一.内置对象 object对象:ECMAScript 中的所有对象都由这个对象继承而来:Object 对象中的所有属性和方法都会出现在其他对象中 ToString() : 返回对象的原始字符串表示.V ...
- javascript中函数作用域和声明提前
javascript不像java等其他强类型语句,没有块级作用域(括号内的代码都有自己的作用域,变量在声明它们的代码段之外不可见)一说,但有自己的独特地方,即函数作用域. 函数作用域:变量在声明它们的 ...
- 深入理解JavaScript的函数作用域
什么是作用域 ? 作用域:一个变量可以生效的范围. 变量不是在所有地方都可以使用的,而这个变量的使用范围就是我们要说的作用域. 注意:在JavaScript中,划分作用域也是用大括号划分的, 但是在 ...
- JavaScript变量的作用域和函数的作用域的区别
变量作用域和函数作用域都涉及到变量值的变化,本文旨在让大家明白他们之间的区别 变量的作用域: 变量的作用域无非就是两种:全局变量和局部变量. Javascript语言的特殊之处,就在于函数内部可以直接 ...
- (转载)javascript函数作用域和提前声明
http://www.cnblogs.com/ArthurPatten/p/3274080.html 一些语言如C.java都有块级作用域,即花括号内的每一段代码都具有各自的作用域,而且变量在声明它们 ...
- javascript函数作用域和提前声明
一些语言如C.java都有块级作用域,即花括号内的每一段代码都具有各自的作用域,而且变量在声明它们的代码段之外是不可见的,但是javascript没有块级作用域.javascript使用函数作用域,即 ...
- JavaScript函数作用域和声明提前(3.10.1 page.57)
<h4>3.函数作用域和声明提前</h4> <p> <!--<script type="text/javascript">-- ...
随机推荐
- [Agc001A/At1979] BBQ Easy - 贪心
要准备N组食物, 他有2N的食材, 需要两两组成一个食物, 食物的价值是两食材中较小的那个. 问最大总价值是多少 ---------- 考虑到\(ans = (sum - delta)/2\),只需要 ...
- phpstorm实用技巧
1.切换php代码版本提示 1.1找到External Libraries右键点击(configure PHP Include Paths) 1.2切换提示版本(在这里切换版本)确定即可 2.生成ge ...
- HTML下拉请求列表标签
select下拉请求列表 option选择项(内容) selected默认值
- Python入门6 —— 流程控制 - if判断
代码块: 1.代码块指的是同一级别的代码,在python中用缩进相同的空格数(除了顶级代码块无任何缩进之外,其余代码块都是在原有的基础上缩进4个空格)来标识同一级的代码块 2.同一级别的代码块会按照自 ...
- BBR在实时音视频领域的应用
小议BBR算法 BBR全称Bottleneck Bandwidth and RTT,它是谷歌在2016年推出的全新的网络拥塞控制算法.要说明BBR算法,就不能不提TCP拥塞算法. 传统的TCP拥塞控制 ...
- ArcGIS10:ArcGIS version not specified. You must call RuntimeManager.Bind before creating any ArcGIS
[网络转载] 今天将ArcGIS系列的软件从ArcGIS9.3.1升级到ArcGIS10,然后就使用VS创建一个简单的AE应用程序,然后拖放一个toolbar.LicenseControl以及MapC ...
- ORA_12514:TNS:listener does not currently know of service requested in connect descriptor
问题描述 ORA_12514:TNS:listener does not currently know of service requested in connect descriptor 解决方式 ...
- 超大jtl解析jar包使用源于testfan
解决超大jtl解析过慢时间过长问题: usage: java -jar jmeter-graph.jar jtl_path interval_time (单位:s) 10G文件分析测 ...
- 02-Java基础语法【数据类型转换、运算符、方法入门】
重点知识记录 01.数据类型转换 当数据类型不一样是,将会发生数据类型转换. 1)自动类型转换(隐式): 特点:代码不需要进行特殊处理,自动完成: 规则:数据范围从小到大:byte < shor ...
- 函数match应打印s中从ch1到ch2之间的所有字符,并且返回ch1的地址。
1 char *match( char *s, char ch1, char ch2 ){ ; ; ; while(s[len]){ len++; } *len+];//防止s字符串全满导致t溢出 * ...