1、当 JavaScript 中的变量被声明的时候,程序内部会给它一个初始值 undefined。当你对一个值为 undefined 的变量进行运算操作的时候,算出来的结果将会是 NaNNaN 的意思是 "Not a Number"。当你用一个没有 定义 的变量来做字符串连接操作的时候,它会如实的输出"undefined"

2、在 JavaScript 中所有的变量都是大小写敏感的。这意味着你要区别对待大写字母和小写字母。使用 驼峰命名法 来书写一个 Javascript 变量,在 驼峰命名法 中,变量名的第一个单词的首写字母小写,后面的单词的第一个字母大写。

3、js中的浮点数:定义和用法:parseFloat() 函数可解析一个字符串,并返回一个浮点数。 语法:parseFloat(string),参数string是必须的,表示要被解析的字符串 返回值:返回解析后的数字

4、在编程当中,通常通过赋值来修改变量的内容。请记住,先计算=右边,然后把计算出来的结果赋给左边。还有一类操作符是一步到位既做运算也赋值的。这类操作符的其中一种就是 += 运算符。例如:myVar = myVar + 5; 相当于myVar += 5;( 也是把数值 5 加到变量 myVar上。)

 注意:1)与 += 操作符类似,-= 操作符用来对一个变量进行减法赋值操作。myVar = myVar - 5;相当于 myVar -= 5;

           2)*= 操作符是让变量与一个数相乘并赋值。myVar = myVar * 5;相当于 myVar *= 5;

           3) /= 操作符是让变量与另一个数相除并赋值。myVar = myVar / 5;相当于 myVar /= 5;

不管是myVar += 5; myVar -= 5; myVar *= 5; myVar /= 5;

数字都在右边,变量在左边;+、-、*、/在左边,等于号在右边。

也就是说:5 /= myVar;跟myVar =/ 5;是错误的。

5、反斜杠 (\) 来转义引号。var sampleStr = "Alan said, \"Peter is learning JavaScript\".";这标志着提醒 JavaScript 单引号或双引号并不是字符串的结尾,而是出现在字符串内的字符。所以,如果你要打印字符串到控制台,你将得到:Alan said, "Peter is learning JavaScript".

注意:

6、与字符串的数据不可变不同,数组的数据是可变的,并且可以自由地改变。

例如:1)var ourArray = [3,2,1];
            ourArray[0] = 1;     // ourArray等于 [1,2,1];

2)var sampleStr = "Alan said";

sampleStr[0]=m;   //sampleStr等于Alan said;并没有被改变

7、可以把 多维 数组看作成是一个 数组中的数组。当使用[]去访问数组的时候,第一个[index]访问的是第N个子数组,第二个[index]访问的是第N个子数组的第N个元素。

例如:var arr = [ [1,2,3], [4,5,6], [7,8,9], [[10,11,12], 13, 14] ];

             arr[0];    // 等于 [1,2,3]
             arr[1][2];    // 等于 6
            arr[3][0][1];    // 等于 11

8、在 JavaScript 中,为了让两个不同的 数据类型(例如 数字字符串)的值可以作比较,它必须把一种类型转换为另一种类型。然而一旦这样做,它可以像下面这样来比较:

例如:1 == 1 // true
             1 == 2 // false
            1 == '1' // true
          "3" == 3 // true

  注意:全等(===)是相对于相等操作符(==)的一种操作符。与相等操作符不同的是全等比较严格,它会同时比较元素的值和 数据类型

  例如:3 === 3 // true
            3 === '3' // false ,3 是一个 数字 类型的,而'3' 是一个 字符 类型的,所以3不全等于'3'。

注意:大于等于 运算符( >= )或大于运算符( 来比较两个数字的大小的时候,与相等运算符相似,大于等于 运算符在比较的时候会转换值的数据类型。于等于 运算符( <)或小于于运算符( < )同上;

例如

6 >= 6 // true
       7 >= '3' // true
       2 >= 3 // false
      '7' >= 9 // false

9、当代码执行到return语句时,函数返回一个结果就结束运行了,return后面的语句根本不会执行。

例如:

function myFun() {
console.log("Hello");
return "World";
console.log("byebye")
}
myFun();

上面的代码输出"Hello"到控制台、返回 "World",但没有输出"byebye",因为函数遇到return语句就退出了。

关于JavaScript的小笔记的更多相关文章

  1. JavaScript看书笔记01

    JavaScript看书笔记... ------------------- JavaScript允许var定义语句出现在函数内部的任意位置.JS中使用Var来显示的给变量声明 JavaScript是一 ...

  2. 《你不知道的javascript》读书笔记2

    概述 放假读完了<你不知道的javascript>上篇,学到了很多东西,记录下来,供以后开发时参考,相信对其他人也有用. 这篇笔记是这本书的下半部分,上半部分请见<你不知道的java ...

  3. JavaScript语言精粹笔记

    JavaScript语言精粹笔记 掌握语言的每个特性可以让你出风头,但是并不推荐,因为一部分的特性带来的麻烦可能远超本身的价值.正如书中所言,坏的材料并不能雕刻出好的作品,要成为一名更好的程序员,要取 ...

  4. javascript学习-原生javascript的小特效(原生javascript实现链式运动)

    以下代码就不详细解析了,在我之前的多个运动效果中已经解析好多次了,重复的地方这里就不说明了,有兴趣的童鞋可以去看看之前的文章<原生javascript的小特效> <!DOCTYPE ...

  5. javascript学习-原生javascript的小特效(多个运动效果整理)

    以下代码就不详细解析了,在我之前的多个运动效果中已经解析好多次了,重复的地方这里就不说明了,有兴趣的童鞋可以去看看之前的文章<原生javascript的小特效> <!DOCTYPE ...

  6. 转:【iOS开发每日小笔记(十一)】iOS8更新留下的“坑” NSAttributedString设置下划线 NSUnderlineStyleAttributeName 属性必须为NSNumber

    http://www.bubuko.com/infodetail-382485.html 标签:des   class   style   代码   html   使用   问题   文件   数据 ...

  7. 小笔记:Timer定时间隔时间操作

    小笔记:Timer定时间隔时间操作,后面有时间再补充和完善: public class TimingSvc { /// <summary> /// 定时器,执行定时任务 /// </ ...

  8. JavaScript正则表达式学习笔记(二) - 打怪升级

    本文接上篇,基础部分相对薄弱的同学请移步<JavaScript正则表达式学习笔记(一) - 理论基础>.上文介绍了8种JavaScript正则表达式的属性,本文还会追加介绍几种JavaSc ...

  9. 关于 linux中TCP数据包(SKB)序列号的小笔记

    关于  SKB序列号的小笔记 为了修改TCP协议,现在遇到了要改动tcp分组的序列号,但是只是在tcp_sendmsg函数中找到了SKB的end_seq  一直没有找到seq 不清楚在那里初始化了,就 ...

随机推荐

  1. 20170114 - Mac 向上一级文件夹快捷键

    以前使用XtraFinder来实现向上跳转文件夹,Mac其实自带的向上一级文件夹,只是没有那么明显, Mac下跳转上一级文件夹的快捷键是 Command + Up Arrow,即: ⌘ ↑

  2. windows下配置Java环境变量

    一.首先, JDK的安装路径,在这里我们选择默认安装在C:\Program Files\Java\jdk1.7.0_45\目录下. 二.下面, 设置环境变量: [1]“我的电脑”右键菜单---> ...

  3. C# 修改iframe url

    一.修改本级的iframe url 首先在js中编写函数: <script type="text/javascript"> function reloadfrm2() ...

  4. mysql与oracle在groupby语句上的细节差异

    前言 之所以去纠那么细节的问题,是因为之前有过一个这样的场景: 有个同学,给了一条数据库的语句给我,问,为啥这样子的语句在oracle语句下执行不了. select * from xx where x ...

  5. FTP上传下载工具(FlashFXP) v5.5.0 中文版

    软件名称: FTP上传下载工具(FlashFXP) 软件语言: 简体中文 授权方式: 免费试用 运行环境: Win 32位/64位 软件大小: 7.4MB 图片预览: 软件简介: FlashFXP 是 ...

  6. Passing Reference by value

    今天查bug的时候,遇到一个问题,一个Dictionary<int[],string>数据结构,在使用key取它的value时: var tempVar = _dic[key]; 发生崩溃 ...

  7. mac相关

    1 mac的动态链接库 mac基于bsd,所以它使用的是bsd风格的动态链接库,即以.dylib为后缀的动态链接库. 这个和windows的.dll和linux的.so相区分.

  8. linux入侵控制与痕迹清理

    后门 (1)开机自动反弹shell (2)linux后门 Rookit 目前常用的有:t0rn /mafix/enyelkm 等 mafix rootkit Mafix是一款常用的轻量应用级别Root ...

  9. iOS缓存

    存储缓存: 第三方应用只能把信息保存在应用程序的沙盒中.因为缓存数据不是用户产生的,所以它应该被保存在NSCachesDirectory,而不是NSDocumentsDirectory.为缓存数据创建 ...

  10. ListBox 如何改变某行的字体颜色

    Option Explicit Private Type RECT Left As Long Top As Long Right As Long Bottom As Long End Type Pri ...