第3章 基本概念3.4 数据类型 5种简单数据类型:undefined、boolean、number、null、string. typeof操作符,能返回下列某个字符串:“undefined”、“boolean”、“number”、“string”、“object”、“function” typeof null = "object" 对未初始化和未声明的变量执行typeof操作都返回“undefined”,如下所示var message; //未初始化//var age; //未声明 alert(typeof message); //"undefine...
定义函数的方式有两种:一种是函数声明,另一种就是函数表达式。函数声明的一个重要特征就是函数声明提升(function declaration hoisting),意思是在执行代码前会先读取函数声明。这个例子不会报错,因为代码在执行前会先读取函数声明。理解函数提升的关键就是区别函数声明和函数表达式之间的区别。 函数表达式的方式有几种表达形式,其中很常见的一种形式就是匿名函数的形式:这种情况下创建的函数叫做匿名函数,因为function关键...
浅析undefined与null的区别相似处:1、undefined 和 null 都是javascript 的基本数据类型。其实两者没有太大区别。定义:var a=undefined; var a=null; null==undefined;//true2、null是一个表示"无"的对象,转为数值时为0;undefined是一个表示"无"的原始值,转为数值时为NaN。Number(undefined)//NaN 5 + undefined //NaN而对于nullNumber(null) // 0 5 + null // 5区别1、null表示"没有对象",即该处不应该有值。典型用法是:(...
第十六章 HTML5脚本编程1、跨文档消息传递。简称XDM,指的是来自不同域的页面间传递消息。XDM的核心是postMessage()方法,接收两个参数,一条消息和消息接收方来自哪个域的字符串。接收到XDM消息时,会触发window对象的message事件,异步触发。为保险起见,第一个参数传递字符串。在传入结构化的数据时调用JSON.stringify(),然后在onmessage事件处理程序中调用JSON.parse()。2、原生拖放1、拖放事件。拖动元素时,将依次触发...
今天编程时,JavaScript 程序报了这样的错误:Cannot use ‘in‘ operator to search for...,具体错误信息如下: 坦白说,这样的错误最难调试。因为它并不指向你所写的具体代码,而是泛泛指向了 lib.js 文件(该文件通常是第三方的打包压缩库),你几乎无法依据错误类型与错误指向来定位到实际编程中的错误位置。 怎么办? 这个时候,只有发挥“死磕”精神了! 死磕步骤:依据故障页面以及错误信息,定位到出错的文件,这一点应...
一、JS基本概念1、命名规则变量名区分大小写(test和Test是两个不同的变量名),标识符采用驼峰命名格式,即:第一个字母小写,剩下的每个有意义的单词首字母大写;标识符第一个字符必须是以字母、_ 、$开始;标识符及变量名不能与关键字保留字一样;其他字符可以是数字、字母、下划线、或$。2、注释//单行注释/**/多行注释3、严格模式支持严格模式的浏览器有:IE10+、Firefox 4+、Safari 5.1+、Opera 12+和Chrome。用"use strict"...
JS里函数关键字就是function,注意事项如下:function add(num1, num2){ return num1 + num2;}1,如果传入var sum = add(1, 6, 7); 则只会取1和6,最后一个多余的参数忽略。2,如果只传入add(1),则会得到NaN,原因是函数的形参num2被当作undefined3,函数的内部有个arguments数组,用于储存传进来的参数列表,如下求的是所有输入参数的和.function add(a, b){var sum= 0;for(var i=0; i< arguments.length; i++){sum+=arguments...
JavaScript是一门最易让人误解的语言,该语言中精华与糟粕并存(可能比一般语言的这个比例要大一些);但“千淘万漉虽辛苦,吹尽黄沙始到金”,层层面纱下是易用灵活、优雅轻灵的内在。很久以前,JavaScript被当做是玩具语言,直到AJAX的出现,直到V8引擎的易用;这种局面已经改变。 JavaScript诞生于1995年(那时我还很小);一个叫Brendan Eich的人设计了这种语言。他就职于Netscape公司,他说服了老总要开发这种语言。然而仅...
转自:作者 | Lydia Hallie译者 | 弯月,责编 | 屠敏出品 | CSDN(ID:CSDNnews)下为译文:JavaScript 很酷(这一点不用我说),但一台机器究竟是怎样理解我们编写的代码呢?作为JavaScript 开发者,我们通常不需要处理编译器的东西。但是,了解 JavaScript 引擎的基础知识,知道它如何将人类能看懂的JS代码变成机器能理解的东西,是绝对是有好处的!注意:这篇文章主要根据 Node.js 和基于 Chromium 的浏览器使用的V8引擎撰写。1...
相等操作符:相等==:这个操作符会先转换操作数,强制类型转换,然后再比较他们的相等性。null == undefined //true NaN == NaN //false"5" == 5 //true 全等===: 全等不会发生强制类型转变,同时会比较类型。"5" === 5 //falsenull === undefined //false条件操作符varible = boolean_expression ? true_value : false_value;//对 boolean_expres...
原型链: 构造函数中都有一个prototype属性指针,这个指针指向原型对象,而创建的实例也有指向这个原型对象的指针__proto__。当实例查找方法时先在实例上找,找不到再通过__proto__到原型对象上查找。如果原型对象是另一个类型的实例,那么原型对象包含一个指向另一个原型对象的指针、另一个原型对象中也包含指向另一个构造函数的指针。原型连继承function superValue(){this.superValue = "superValue"; }superValue.prototype...
译序有些网友对为什么D2JSP能执行JavaScript脚本程序感到奇怪,因此我翻译了这篇文章,原文在这里。这篇教程手把手教你怎样利用SpiderMonkey创建一个能执行JavaScript脚本的C++程序,并让JavaScript脚本操纵你的C++程序的内部数据、操作。从这篇教程能够看到在SpiderMonkey引擎的帮助下,让C++程序支持JavaScript脚本是一件非常easy的事,更棒的是SpiderMonkey也能够在Macintosh和Unix平台使用。SpiderMonkey是Gecko(Firefox浏览器...
JS脚本语言: 这是JaxaScript的全称名 JS是网页里面使用的脚本语言JS是一个非常强大的语言JS的基础语法注释语法: 单行注释 // 多行注释 /**/ 输出语法: 双标签公式:<script>公式内容</script> alert("信息") 公式内容} 此代码是在页面上弹出信息 confirm(”信息“); 公式内容} 此代码会弹出一个和用户交互的对话框。 有{确定}{取消} prompt("信息") 公式内容} 此代码会弹出一个...
接上一节的创建对象的模式:原型模式: 对于prototype的理解:我们创建的函数都有一个prototype(原型)属性,这个属性是一个指针指向一个对象,而这个对象的用途是包含基于这个方法的所有的实例的共享属性和方法。并且每个原型对象都会默认的自动获取一个constructor(构造函数)的属性。这个属性包含一个执行这个prototype属性所在函数的指针。 function Person(){} Person.prototype.name = ‘kim‘; Person.prototype.age =...
这个系列以往文字地址:《Javascript高级程序设计》阅读记录(一):第二、三章《Javascript高级程序设计》阅读记录(二):第四章 这个系列,我会把阅读《Javascript高级程序设计》之后,感觉讲的比较深入,而且实际使用价值较大的内容记录下来,并且注释上我的一些想法。做这个一方面是提升了我的阅读效果以及方便我以后阅读 另一个目的是,Javascript高级程序设计这本书内容很多也很厚,希望其他没有时间的人可以通过看这...