第十六章 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高级程序设计这本书内容很多也很厚,希望其他没有时间的人可以通过看这...
经过在chrome中实践,outerWidth应该是整个浏览器视窗的宽,innerWidth是实际视窗的宽,作者忽略了控制台的宽,在有控制台的情况下,这两个值是不同的,原文:http://www.cnblogs.com/redeemer/p/7505292.html
1-4章1、变量①、ECMAScript 变量是松散类型的,也就是说可以用来保存任何类型的数据。换句话说每个变量仅仅是一个用于保存值的占位符。②、如果在函数中使用var定义一个变量,那么这个变量在函数退出后就会销毁。③、对未定义和未初始化的变量使用typeof返回都是undefined2、数据类型ECMAScript 有5种简单数据类型(基本数据类型) Undefined Null Boolean Number String 及复杂数据类型 Object。不支持创建自定义类型机制。3、字...
在学习javascript过程中,一开始接触循环语句时一般拿乘法口诀表来练手,这里我将自己的练习贴在这里,希望能给和我一样的初学者些许帮助,也希望大神们能够不吝指教。首先,来看一下乘法口诀表是什么样子的,不要告诉我所有人都记得一清二楚哦!其次,乘法口诀表是一个表格,有行和列之分,用嵌套循环来输出时不可避免要用到两个参数,用i表示行号,用j表示列号。另外,我们输出时是将整个表格当做一个字符串来看待,所以设置字符...