codefordream 关于js中级训练
中级训练接着就紧锣密鼓的开始了。
首先是关于变量,变量的作用是给一个数据值标注名称. 注:JavaScript中变量名,函数名,参数名的命名规范:至少由字母,下划线,美元符号,数字其中的一种组成,但不能以数字开头.变量的定义,如:var num =5。关于变量的引用,我觉得这句话已经说的很形象了——数据本来不具有名称,之所以使用变量,就是为了通过某个名称来称呼这样一种不具有名称的数据. 所谓"引用",可以认为是用变量名来取出其代表的数据值.就像在许许多多的箱子里面通过箱子的名称,找到该箱子里面的内容。变量名如上面的num,就像是一个盒子,它里面装着5这样一个东西,当然,object这样到对象,那里面就像是装了很多盒子,盒子里面又放了值。
接着就是关于代码的运行了,js中的代码是从上到下,从左至右依次运行的,但是有一种情况除外,那便是定义语句。代码在运行的时候,javacript中的定义语句会被提前到所有代码之前执行,不过为了方便还是应该写在调用变量之前。值得一提的是,提前执行的仅仅是定义语句,而关于赋值语句却是没有提前的,例如:
console.log(num); var num =5; console.log(num);
运行这段代码输出的就是:
undefined 5
然后就是关于函数的嵌套,函数到嵌套就是在函数内部还可以声明和调用函数,有点递归的意思,但递归是调用自己,其实递归也很强大的,就像是尼克劳斯·维尔特说的,递归的强大之处在于它允许用户用有限的语句描述无限的对象。因此,在计算机科学中,递归可以被用来描述无限步的运算,尽管描述运算的程序是有限的。一个很简单得阶乘例子:
而函数的嵌套则是在函数内部声明或者调用另外一个函数。
最后讲到的就是作用域了。作用域指的是名称(变量名与函数名)的有效范围。JavaScrpit中有两种作用域:1.全局作用域 2.局部作用域 全局作用域是指在所有函数之外(即最外层代码)的作用域.在所有函数之外进行声明的变量或函数属于全局作用域,全局作用域中的变量就是全局变量,全局作用域中的函数就是全局函数. 局部作用域是指所有在函数的内部进行声明的变量或函数,这些变量(又称局部变量)或函数仅在该函数内部才有效。注意:当一个变量名既是局部变量又是全局变量时,会优先访问局部变量.也就是说,局部变量在其作用域内的优先级高于外层作用域的同名变量。按我的理解就是,离这个变量赋值近一点的就优先,也就是就近原则。
codefordream 关于js中级训练的更多相关文章
- codefordream 关于js初级训练
这里的初级训练相对简单,差不多都是以前知识温习. 比如输出“hello world”,直接使用console.log()就行.注释符号,“//”可以注释单行,快捷键 alt+/,"/* ...
- 我的JS 中级学习篇
在codefordream上进入中级学习后,感觉立马从js的基础学习往前跳了好远,上面的东西好像都是第一次看到一样.这时候才发现,说来也曾接触过js,但是这时候才发现对js的认识就停在知道两点:js中 ...
- Js中级复习
JS中级复习—— 1,this 就是js的关键字 用途:指向某一个对象 如何判断this指向: 函数(方法)内—— 一种以函数的方式调用(不带.)this指向window 一种以方法的形式调用(函 ...
- JS中级 - 02:表单、表格
getElementsByTagName() getElementsByTagName() 方法可返回带有指定标签名的对象的集合. getElementsByClassName() 返回文档中所有指定 ...
- js中级6
1.动画 (1)Css样式提供了运动 过渡属性transition 从一种情况到另一种情况叫过渡 transition:time linear de ...
- 11-22 JS中级复习
1.this js的关键字, 用途:指向某一个对象. 如何判断this指向 函数(方法)内 一种以函数的方式调用(不带.) this指向winodw 一种以方法的形式调用(函数名前面带.)this指向 ...
- js中级小知识5
元素的属性 div.attributes是所有标签属性构成的数据集合 div.classList是所有class名构成的数组集合 在classList的原型链上可以看到add()和remove() 1 ...
- js中级小知识4
1.针对表单 form input select textarea type="radio/checkbox/passdord/button/submit/reset/ ...
- js中级小知识2
1.面向对象 js一开始就是写网页特效,面向过程的,作者发现这样写不好,代码重复利用率太高,计算机内存消耗太大,网页性能很差.所以作者就收到java和c的影响,往面向对象靠齐.js天生有一个Objec ...
随机推荐
- 微信公众平台API接口
简介 微信公众平台消息接口为开发者提供了一种新的消息处理方式.微信公众平台消息接口为开发者提供与用户进行消息交互的能力.对于成功接入消息接口的微信公众账号,当用户发消息给公众号,微信公众平台服务器会使 ...
- redis的面试题,没答出来,直接被pass
redis 内存数据集大小上升到一定大小的时候,就会施行数据淘汰策略.redis 提供 6种数据淘汰策略: volatile-lru:从已设置过期时间的数据集(server.db[i].expire ...
- OpenGL Insights 阅读有感 - Tile Based架构下的性能调校 翻译
Performance Tunning for Tile-Based Architecture Tile-Based架构下的性能调校 by Bruce Merry GameKnife译 译序 在大概1 ...
- MySQL流程函数
#如果value是真,返回t:否则返回f if(value,t f) #如果value1不为空,返回value1,否则返回value2 ifnull(value1,value2) #如果value1是 ...
- 一、javascript中的类
1.找出对象的构造器----constructor/instanceof constructor是用模版实例化对象的时候附带的一个额外属性,这个属性指向创建该对象时所使用的javascript构造函数 ...
- TP5验证规则
系统内置的验证规则如下: 格式验证类 require 验证某个字段必须,例如:'name'=>'require' number 或者 integer 验证某个字段的值是否为数字(采用filter ...
- nodejs 模块恩仇录
anywhere 一句话:随时随地将你的当前目录变成一个静态文件服务器的根目录. 安装 npm install anywhere -g anywhere -h localhost -p 8060 fa ...
- windows多线程编程星球(一)
以前在学校的时候,多线程这一部分是属于那种充满好奇但是又感觉很难掌握的部分.原因嘛我觉得是这玩意儿和编程语言无关,主要和操作系统的有关,所以这部分内容主要出现在讲原理的操作系统书的某一章,看完原理是懂 ...
- 第一章-第十四题(Hello world程序)
题目:请找一个同学结对 (参看本书结对编程的内容),两人共同工作 (不能分开干活),从上面的列表中选取两个平台,在每个平台上,写一个最简单的 "Hello World" 类型的程序 ...
- SDOI 2016 生成魔咒
题目大意:一个字符串,刚开始为空,依次在后面添加一个字符,问每次添加完字符后本质不同的字符串有多少种 后缀自动机裸题,添加字符时,更新的结点个数即为新增加的子串 #include<bits/st ...