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. Hadoop2.7.5+Hbase1.4.0完全分布式

    Hadoop2.7.5+Hbase1.4.0完全分布式一.在介绍完全分布式之前先给初学者推荐两本书:<Hbase权威指南>偏理论<Hbase实战>实战多一些 二.在安装完全分布 ...

  2. 微信小程序个人心得

    尊重原创:http://blog.csdn.net/qq_28832135/article/details/52796048 昨天看了一下微信小程序官方文档,总结一下自己学习的个人心得. 首先从官方文 ...

  3. 审计日志中的AOP

    审计跟踪(也称为审核日志)是一个安全相关的时间顺序记录,记录这些记录的目的是为已经影响在任何时候的详细操作,提供程序运行的证明文件记录.源或事件 MVC 自定义一个过滤器 public class A ...

  4. HDU 4763 Theme Section

    题目: It's time for music! A lot of popular musicians are invited to join us in the music festival. Ea ...

  5. UE4 多人FPS VR游戏制作笔记

    1, 2,服务器游戏流程 服务器负责驱动游戏流程.服务器的职责是在游戏开始/结束以及 actor 复制更新等情况下通知客户端转移到新地图. 主要架构部分 大多在本文的讨论范围之外,但我们可以在遇到特定 ...

  6. Java多线程编程—锁优化

    并发环境下进行编程时,需要使用锁机制来同步多线程间的操作,保证共享资源的互斥访问.加锁会带来性能上的损坏,似乎是众所周知的事情.然而,加锁本身不会带来多少的性能消耗,性能主要是在线程的获取锁的过程.如 ...

  7. C++异常层次结构

    #define _CRT_SECURE_NO_WARNINGS #include <iostream> using namespace std; class MyArray { publi ...

  8. ip001

    ----------- <?phpheader('Content-type:text/html;charset=utf8');// <script type="text/java ...

  9. 机器学习——kNN(1)基本原理

    =================================版权声明================================= 版权声明:原创文章 禁止转载  请通过右侧公告中的“联系邮 ...

  10. MyBatis动态传入表名,字段名参数的解决办法

    原文:http://blog.csdn.net/xichenguan/article/details/50393748 要实现动态传入表名.列名,需要做如下修改 添加属性statementType=& ...