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">-- ...
随机推荐
- centos7重启Mysql命令
执行命令/etc/init.d/mysql restart重启Mysql服务器
- CTF——代码审计之变量覆盖漏洞writeup【2】
题目: 基础: 所需基础知识见变量覆盖漏洞[1] 分析: 现在的$a=’hi’,而下面的函数需满足$a=’jaivy’才可以输出flag,那么需要做的事就是想办法覆盖掉$a原来的值. 那么出现的提示 ...
- Ubuntu 安装交叉编译器出错问题
安装教程网上有很多,可参考:Ubuntu14.04(64位)下gcc-linaro-arm-linux-gnueabihf交叉编译环境搭建 但是我的问题一直是路径搭好了,就是找不到文件:反复查找,花了 ...
- AcWing 891. Nim游戏
//a1 ^ a2 ^ ··· ^ an = 0 –>先手必败: //a1 ^ a2 ^ ··· ^ an != 0 –>先手必胜: #include<iostream> us ...
- IntelliJ IDEA构建多Module项目
打开IDEA 创建完成项目后,我们创建子模块 可以看到common子模块创建成功,子模块的名字大家可以根据自己的实际需求来修改 下面我们再创建子模块 给子模块起个名字 现在已经创建好多模块的项目了,下 ...
- 【PAT甲级】1115 Counting Nodes in a BST (30分)(二叉查找树)
题意: 输入一个正整数N(<=1000),接着输入N个整数([-1000,1000]),依次插入一棵初始为空的二叉排序树.输出最底层和最底层上一层的结点个数之和,例如x+y=x+y. AAAAA ...
- thinkphp3.2 中 Memcache 的配置和使用(memcahe的使用场景)
Thinkphp的默认缓存方式是以File方式,在/Runtime/Temp 下生成了好多缓存文件. TIPS: TP3.2支持的缓存方式有:数据缓存类型,支持:File|Db|Apc|Memcach ...
- IIS支持json、geojson文件
最近在搞asp.net + openlayers. 其中openlayer有个数据源支持 .geojson 数据,但是怎么测试都不能成功.同样的数据拿到php下就能成功显示. 搓. 在网上漫无目的的搜 ...
- oracle 数据库手动备份和恢复
一.备份命令: 1.cmd : exp 2.cmd :用户名/密码@ip地址/数据库名 如: yyj/yyj@172.12.5.5/orcl 要导出的数据库 3.回车:输入要输出的 ...
- Linux sed识别HTML标签
在做Linux作业,遇到一题用sed替换掉文件中的特殊字符,其中HTML标签就是一大堆特殊字符. 先来说说sed的替换使用“s/待替换的字符/将替换成的字符/”. 其后还可以跟g,即“s///g”,表 ...