一.注释
/**/
// 采用这个

二.标识符
标识符被用于语句、变量、参数、属性名、运算符和标记
三.数字
javascript只有一个单一的数字模型。它在内部被表示64位的浮点数。
没有分离出整形,所以1和1.0是相同的值。
负数:可以用前缀符- 来构成
值NaN是一个数值,它表示一个不能产生正常结果的运算结果。
NaN不等于任何值,包括它自己。isNaN()检测NaN
四.字符串
字符串字面量可以别包围在单引号或双引号中,它可能包含0个或多个字符。
\ (反斜线符号)是转义字符。javascript在被创建的时候,unicode是一个16位的字符集,所以javascript中的所有字符都是16位的。
javascritp没有字符类型。要表示一个字符,只需创建仅包含一个字符的字符串即可。

②。字符串有一个length属性
③。字符串是不可变的。一旦字符串被创建,就永远无法改变它。“+”连接字符串
五。语句
1.下面的值被当作假
false null undefined 空字符串'' 数字0 数字NaN 其他所有的值都被当作真,包括true、字符串“false”,以及所有的对象。
六。表达式

七。字面量
对象字面量是一种方便指定新对象的表示法。
八。函数
函数字面量定义了函数值。
九。对象
javascript的简单类型包括数字、字符串、布尔值(true false)、null值和undefined值。其他所有的值都是对象。
①。javascript中的对象是可变的键控集合
②。javasript中,数组是对象,函数是对象、正则表达式是对象,当然,对象也是对象。
③。对象是属性的容器,其中每个属性都拥有名字和值。属性的名字可以是包括空字符串在内的任意字符。属性值可以是除了undefined值之外的任何值。
④。javascript包括一个原型链特性,允许对象继承另一个对象的属性。正确地使用它能减少对象初始化的时间和内存消耗。
2.对象字面量
var empty_boject = {};

var stooge = {
// 属性名,并不强制要求用引号括住属性名。
"first-name": "jerome",
"last-name" : "howard"
};

属性的值可以从包括另一个对象字面量在内的任意表达式中获得。对象是可嵌套的:
var flight = {
airline: "oceanic",
number: 815,
departure:{
iata: "syd",
time: "2004-09-22 14:55",
city: "sydney"
},

arrival:{
iata: "lax",
time: "2004-09-23",
city: "los angeles"

}

};
3.检索
stooge["first-name"]
flight.departure.iata
4.更新
stooge["first-name"] = 'jerome';
5.引用
对象通过引用来传递。它们永远不会被拷贝:
var x = stooge;
x.nickname = 'curly';
var nick = stooge.nickname;
//因为x和stooge是指向同一个对象的引用,所以nick位'curly'
var a = {}, b={}, c={};
//a、b、b每个都引用一个不同的空对象
a = b =c={};
//a、b、b都引用同一个空对象。
6.原型
object.prototype是javascript中标准的对象
7.反射
typeof操作符对确定属性的类型很有帮助
8.枚举
9.删除
delete运算符可以用来删除对象的属性
another_stooge.nickname
delete another_stooge.nickname;
another_stooge.nickname
十、函数
一般来说,所谓编程就是将一组需求分解成一组函数与数据结构的技能。
1.函数对象
在javascript中函数就是对象。对象是“名/值”对的集合并拥有一个连到原型对象的隐藏连接。
①。对象字面量产生的对象连接到object.prototype
②。函数对象连接到function.protope 原型
③。因为函数是对象,所以它们可以像任何其他的值一样被使用。函数可以存放在变量、对象和数组中,函数可以被当作参数传递给其他函数,函数也可以再返回函数。而且,因为函数是对象,所以函数可以拥有方法。 函数的与众不同之处在于它们可以被调用。
2.函数字面量

//创建一个名为add的变量,并用来把两个数字相加的函数赋值给它。
var add = function (a,b){
return a+b;
};

注释:函数字面量包括四个部分。第一个部分是保留字function
第二个部分是函数名,它可以被省略。(匿名函数)
第三部分是包围在圆括号中的一组参数。
第四部分是包围在花括号中的一组语句。
3.调用
在javascript中一共有四种调用模式:
①。方法调用模式
当一个函数被保存为对象的一个属性时,我们称它为一个方法。
//创建myObject。它有一个value属性和一个increment方法。
//increment方法接受一个可选的参数。如果参数不是数字,那么默认使用数字1

var myObject = {
value: 0;
increment: function (inc) {
this.value += typeof inc ==='number' ? inc : 1;
}

};

myObject.increment();
document.writeln(myObject.value); //1
myObject.increment(2);
document.writeln(myObject.value); //3

②。函数调用模式
当一个函数并非一个对象的属性时,那么它被当作一个函数来调用

var sum = add(3,4); //sum的值为7
③。构造器调用模式
var quo = function(string){

this.status = string;
};
④。apply调用模式。

1.javascript语言精粹笔记的更多相关文章

  1. JavaScript语言精粹笔记

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

  2. JavaScript 语言精粹笔记3

    方法 毒瘤 糟粕 记录一下阅读蝴蝶书的笔记,本篇为书中最后一部分:方法.代码风格.优美的特性.毒瘤.糟粕等. 方法 这一章主要介绍了一些方法集.这里写几个我不太熟悉的方法和要点吧. array.joi ...

  3. JavaScript语言精粹 笔记06 方法

    JS包含了少量可用在标准类型上的标准方法. ArrayFunctionNumberObjectRegExpString Array array.concat(item...) concat方法返回一个 ...

  4. JavaScript语言精粹 笔记05 正则表达式

    正则表达式 正则表达式以方法的形式被用于对字符串中的信息进行查找.替换画图提取操作.可处理正则表达式的方法有:regexp.exec, regexp.test,string.match, string ...

  5. JavaScript语言精粹 笔记04 数组

    数组1 数组字面量2 长度3 删除4 列举5 混淆的地方6 方法7 维度 数组1 数组字面量 var empty = []; var numbers = [ 'zero', 'one', 'two', ...

  6. JavaScript语言精粹 笔记03 继承

    继承伪类对象说明符原型函数化部件 继承 JS不是基于类的,而是基于原型的,这意味着对象直接从其他对象继承. 1 伪类 JS提供了一套丰富的代码重用模式,它可以模拟那些基于类的模式,因为JS实际上没有类 ...

  7. JavaScript语言精粹 笔记02 函数

    函数函数对象函数字面量调用参数返回异常给类型增加方法递归作用域闭包回调模块级联套用记忆   函数 1 函数对象 在JS中函数就是对象.对象是“名/值”对的集合并拥有一个连接到原型对象的隐藏连接.对象字 ...

  8. JavaScript语言精粹 笔记01 语法 对象

    内容比较简单,只是从头梳理一下JS的知识 语法空白标识符数字字符串语句 对象对象字面量检索更新引用原型反射枚举删除减少全局变量污染  语法 1 空白 空白可能表现为格式化字符或注释的形式.空白通常没有 ...

  9. javascript语言精粹-笔记

    walkDOM function walkTheDOM(node, func) { func(node); node = node.firstChild; while (node) { walkThe ...

随机推荐

  1. vb.net Bitmap Drawing

    Public Class Form1 Dim BMP As New Drawing.Bitmap(640, 480) Dim GFX As Graphics = Graphics.FromImage( ...

  2. Log4j配置文件例子

    Log4j配置文件例子: # Define somedefault values that can be overridden by system properties hbase.root.logg ...

  3. 使用JavaMelody监控tomcat以及jvm

    JavaMelody用于对Java应用或者应用服务器的QA以及开发环境的监控.它并不是一个模拟请求类似JMeter的压力测试工具,而是一个衡量并且计算在应用上的操作信息的工具,也就是说,它只负责对行为 ...

  4. android基础-Apk打包过程(了解)

    此文来源于<Android软件安全与逆向分析> 一.打包资料文件,生成R.java文件. 二.处理aidl文件,生成相应的Java文件. 三.编译工程源代码,生成相应的class文件. 四 ...

  5. 微信小程序列表加载更多

    概述 基于小程序开发的列表加载更多例子. 详细 代码下载:http://www.demodashi.com/demo/13632.html 一.前言 基于小程序开发的列表加载更多例子. 二.运行效果 ...

  6. 基于skitter的轮播图炫酷效果,幻灯片的体验

    概述 包含各种炫酷的轮播切换效果,插件小巧,与其他插件无冲突,可用于移动端和PC端 详细 代码下载:http://www.demodashi.com/demo/11939.html 你还在用原生的js ...

  7. C-常用构造哈希函数

    1.定址法(比如0-100岁的人数统计, 可以按年龄作为散列地址, 1980年后每年出生人数的统计, 可以把"年限 - 1980"作为散列地址) 2.取余法 3.数字分析法(比如一 ...

  8. JavaScript 中的所有数据都是以 64 位浮点型数据(float) 来存储。浮点型数据使用注意事项。全局变量特殊之处

    JavaScript 中的所有数据都是以 64 位浮点型数据(float) 来存储. 所有的编程语言,包括 JavaScript,对浮点型数据的精确度都很难确定: <!DOCTYPE html& ...

  9. 使用jquery的 uploadify,在谷歌浏览器上总会崩溃的解决方法

    最近做的项目使用了jquery的uploadify,但是在谷歌浏览器测试总是会出现崩溃.如: 因为是java项目. 解决的办法是: 给引入的js加上一个参数,时间戳就可以,防止缓存,使每一次都请求.( ...

  10. java遍历实体类的属性和数据类型以及属性值

    遍历实体类的树形和数据类型一级属性值 /** * 遍历实体类的属性和数据类型以及属性值 * @param model * @throws NoSuchMethodException * @throws ...