javascript:
基于浏览器
基于对象
事件驱动
脚本语言
由:

javascript: ECMAscript(ES) DOM文档对象模型 BOM浏览器对象模型,三部分组成

使用js的三种方式
1.HTML标签中内嵌js:<button ondblclick="javascript:alert('ssas')">点我呀!!!</button>
不建议使用
2.在HTML页面中直接使用:
<script type="text/javascript">
//js代码
</script>
3.引用外部js文件:
<script language="JavaScript" src=""></script>
 
[注意事项]
①.页面中js代码与引用js代码可以嵌入到页面的任何位置,但是位置不同,会影响到js代码的执行顺序;
例如<script></script>在body前面会在页面加载之前执行js代码
②.页面中js代码使用type属性引用外部的js文件使用的是language。
③.引用外部js文件的script标签必须成对出现,且标签内部不能有任何代码
 
 
赋值:

使用var声明变量只在当前函数作用域有效
不使用var,直接赋值生成的变量,默认为全局变量,整个js文件有效
var a,b,c=1;同一声明语句,同时声明多个变量,变量之间用英文逗号,分隔。
 
变量的命名规范:
①变量名只能有字母数字_$组成
②开头不能是数字
③变量区分大小写,大写与小写为不同变量
 
js中的变量的数据类型
undefined:未定义,用var声明的变量,没有进行初始化赋值 var a
null:表示空的引用。 var a = null
boolean:真假,可选值 true/false
number:数值类型,可以是小数,也可以是整数
string:字符串类型。用""或''包裹的内容称为字符串。
object(复杂数据类型)
 
js中的输出语句:
输出语句,将write的()中的内容打印在浏览器屏幕上;
* 使用时注意:除变量/常量以外的任何内容,打印时必须放到""中。变量/常量必须放到""外
* 打印的内容同时有多部分组成时,之间用+连接
弹窗输出: alart()
弹窗输入:promp()
 
运算符的优先级
()
! ++ --
% / *
+ -
> < >= <=
== !=
&&
||
各种赋值= += *= /= %=
 
 
分支结构:
if-else结构
if()中的表达式,运算之后的结果应该为:
① boolean:true 真 false 假
② 字符串:非空字符串为真 空字符串为假
③ Number:0为假 非0均为真
④ Null/NaN/Undefined:全是假
⑤ Object类型:全是真
 
多重if,阶梯if
多重if结构中,各个判断条件是互斥的!只能选择其中一条路
 
嵌套if结构
if结构可以多重嵌套,但是原则上不超过3层
 
switch-case结构
注意事项:
① switch()中的表达式以及每个case后面的表达式可以为任何js支持的数据类型(对象和数组不行);
② case后面的所有常量表达式,必须各不相同,否则只会执行第一个;
③ case后面的常量可以是任何数据类型(对象和数组不行);同一个switch结构的不同case,可以是多种不同的数据类型
④ switch在进行判断的时候,采用的是全等判断
⑤ break的作用:执行完case代码后,跳出当前switch结构;
若缺少break的后果:从正确的case项开始,依次执行所有的case和default
⑥ switch结构在判断时,当遇到正确的case项后将会不再判断后续项目。依次向下执行
⑦ switch结构的执行速率要快于多重if结构。在多路分支时,可优先考虑使用switch结构
 
 
 
循环结构:
for循环
for循环有三个表达式,分别为:
①定义循环变量
②判断循环条件
③更新循环变量
三个表达式之间用;分隔
1. for循环三个表达式均可省略,但是两个;缺一不可
2.for循环特点:先判断,再执行
3.for循环三个表达式,均可有多部分组成,之间用,分隔。但是第二部分判断条件需要用&&连接,最终结果为真/假
 
while循环
先判断,再执行
 
do-while循环
先执行,再判断;即使初始条件不成立,do-while也至少循环1次
 
 

JavaScript语言学习中的注意事项的更多相关文章

  1. javascript语言学习

    本课将和大家一起学习简单的js dom 操作,涵盖DOM API以及JQuery的方法. 相关简介             JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语 ...

  2. GJM : JavaScript 语言学习笔记

    JavaScript ------------------------------变量声明 : var a;变量赋值 : var a = 12; 函数声明 : var mAwesomeFunction ...

  3. 【JavaScript】学习中遇到的一些问题

    一.JavaScript中没法直接比较两个object和array是否相等

  4. C语言学习中遇到的小问题(一)

    C语言小白学习C语言的记录1 一.scanf一次性接收连续的数字 1.已知数量,且个数较少:scanf("%d%d%d",&a&b&c); 2.已知数量,但 ...

  5. javascript语言使用技巧及注意事项总结

    1.首次为变量赋值时务必使用var关键字 变量没有声明而直接赋值得话,默认会作为一个新的全局变量,要尽量避免使用全局变量. var a=b=10;//其中a是局部变量,b是全局变量 2.使用===比= ...

  6. ci框架学习中注意的事项

    视图: 加载视图:$this->load->view('name'); 一次可以加载多个视图,如: public function index() { $data['page_title' ...

  7. Javascript Promise 学习 (中)

    时隔多日,对promise有了多一点点的了解. 最近用angularjs 做开发,所以研究了一下它的 $q 功能不算很强大,算是简化版的 Q.js 参考了一下源码,不过我的等级还差很多... 作为学习 ...

  8. C语言学习中容易模糊的一些概念

    1.什么叫分配内存 操作系统把某一块内存空间的使用权利分配给该程序 2.释放内存 操作系统把分配给该程序的内存空间的使用权利收回,该程序就不能再使用这块内存空间 注:释放内存空间并不是把这块内存的数据 ...

  9. javascript语言学习笔记。

    js类创建方法 var DogKing = function(dogName){ this.dogName = dogName; }; var myDogKing = new DogKing(&quo ...

随机推荐

  1. CSS鼠标样式 cursor 属性

    值 描述 url 需使用的自定义光标的 URL. 注释:请在此列表的末端始终定义一种普通的光标,以防没有由 URL 定义的可用光标. default 默认光标(通常是一个箭头) auto 默认.浏览器 ...

  2. js object 常用方法总结

    Object.assign(target,source1,source2,...) 该方法主要用于对象的合并,将源对象source的所有可枚举属性合并到目标对象target上,此方法只拷贝源对象的自身 ...

  3. 访问远程MySQL数据库的方法

    请问各位部署LAMP的时候MySQL是独立出来的服务器,在apache上编译安装php的时候有个--with-mysql后面应该是带mysql路径的,可我应该怎样把这个连接到mysql服务器,因为不是 ...

  4. IIS、nginx、apache只允许域名访问配置

    您开启WAF后,攻击者只能看到WAF的IP,不能看到您的IP,攻击者通过域名访问您的网站时,就会根据规则拦截. 但是如果您的网站可以输入IP地址直接访问,是无法达到防御效果的.比如(http://42 ...

  5. WatchKit编程指南:Watch Apps--文本、标签以及图片

    文本和分类标签 为了在Watch app中展示文本,使用标签对象.分类标签支持格式化的文本,可以在运行时被程序修改. 要添加标签到界面控制器,可以把它拖到对应的故事版场景(storyboard),在这 ...

  6. Aps.net中基于bootstrapt图片上传插件的应用

    Aps.net中基于bootstrapt图片上传插件的应用 在最近的项目中需要使用一个图片上传的功能,而且是多张图片同时上传到服务器的文件夹中,将图片路径存放在数据库中.为了外观好看使用了bootst ...

  7. Linuxc - 多c文件程序编译执行

    多文件使用,一起编译 定义max.h int max(int a,int b); 定义max.c #include "max.h" int max(int a,int b) { i ...

  8. ANSI C与C89、C99、C11区别差异

    body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...

  9. 初次真正意义上的接触Eclipse

    以前就玩安卓app 用过很多软件比如e4a,iapp,aide,lua,但是这都不是真正意义上的安卓编程软件.大二的时候用过Androidstudio,那个软件配置起来太难了,就搁置了. 这次利用机智 ...

  10. 爬取西刺网代理ip,并把其存放mysql数据库

    需求: 获取西刺网代理ip信息,包括ip地址.端口号.ip类型 西刺网:http://www.xicidaili.com/nn/ 那,如何解决这个问题? 分析页面结构和url设计得知: 数据都在本页面 ...