javascript学习指南——先导片
javascript学习:
- 带有src属性的<script>元素不应该在其<script>和</script>标签之间再包含额外的JavaScript代码,如果包含了嵌入的代码,只会下载并执行外部脚本文件,嵌入的代码会被忽略
- 标准模式和混杂模式的区分点:主要为css方面,也会影响JavaScript
标准模式和混杂模式区别
- <noscript>元素可以指定在不支持脚本的浏览器中显示的替代内容,但启用的情况下不会显示
- JavaScript区分大小写,基本数据类型有undefined,Null,Boolean,Number,String JavaScript的精度运算会出现误差,主要是因为采用了IEEE 754标准,转化为二进制后运算有位数限制,利用先转化为整数解决
- 省略var后变量变为全局变量(不赞成这样做),用var在函数内部定义一个变量,则只在函数内部环境有效,undefined派生自null
- isNaN()函数判断是否不是数值
- typeof 判断数据类型,“person instanceof object”判断变量是否是object的实例
- 利用parseInt()函数制定基数,如: var num=parseInt(“10”,16),parseInt()将字符串转化成整数;
- Number()将null转化为0,将undefined转化为NaN
- parseFloat()只解析十进制数,如果第一个数为非数字,会被直接解析为NaN
- 字符串中含有双字节字符,length属性不会精确地返回字符串的字符数目;
- 转换成字符串方法:num.toString(8)可将num转换成8进制的数
创建Object对象保存在变量o中,实现实例化:
var o=new Object(); Object的每个实例有以下属性和方法: constructor:保存用于创建当前对象的函数,此例中的构造函数为Object();
hasOwnProperty():检查对象实例是否有某属性,属性名以字符串形式指定;
valueOf():返回对象的字符串、数值或布尔值,即具体值,如var t=new
Date(),o.valueOf()会返回具体的时间(d的值)
一元操作符+和-对对数字不会产生影响,但对其他非数值进行操作时,会像Number()函数一样对值进行转换
var num1 = 25; // 二进制 00000000000000000000000000011001
var num2 = ~num1; // 二进制 11111111111111111111111111100110
alert(num2); // -26
变成负数的读法是按位取反,末位加一(得到补码)
左移不区分有符号和无符号,右移过程: 有符号右移(>>): 符号位不变,最高位以1填充; 无符号右移(>>>):
会把负数的二进制码当成正数的二进制码,导致得到的结果很大字母和字母比较时,全部转换成字符编码比较;字符和数字比较时,字符转化成数值
函数的参数在调用时不用一一对应,参数其实由一个argument的对象组成的数组,调用的时候,第一个参数可以写为argument[0],依此类推
- 按位非的实质是操作数的负值-1
- valueOf() 方法可返回 Boolean 对象的原始值,NaN不等于任何值
- ECMAScript函数没有重载,但可以实现类似重载效果,可以向函数传递任意数量的参数,函数都会执行,可通过argument对象来访问参数,相当于其中有一个argument数组
判断类型时使用typeof操作符,如果是对象使用instance判断是什么类型的对象
- 创建object实例有两种方法
1.对象字面量表示法:
var person={
name:”nike”, //使用逗号分隔不同的属性
age:12 //最后一个变量,不用加逗号
}
2.最直接的new 操作符+Object构造函数
var person=new Object();
person.name=”Nicholas”;
person.age=29;
使用 new 调用基本包装类型的构造函数,与直接调用同名的转型函数是不一样的。
例如:
var value = “25”;
var number = Number(value); //转型函数
alert(typeof number); //”number”
var obj = new Number(value); //构造函数
alert(typeof obj); //”object”
- join方法可使用不同的分隔符重建字符串
- js中的toString()和toLocaleString()不同地方在于后者会按本地规则进行解析,如new Date()会解析成类似2018/3/26 下午8:35:06,解析数字时会每三个隔一个逗号,像是人民币的断字
- 查找数组中的某个数,从前开始往后:indexOf(),从后开始往前:lastIndexOf()
- 取模运算只与左边的符号有关
- 函数声明会覆盖变量声明(在仅声明不赋值的情况下)
- 自调用函数过程:
(function () {
var x = “Hello!!”; // 我将调用自己
})(); - element.addEventListener(event, function, useCapture);
第一个参数是事件的类型 (如 “click” 或 “mousedown”).
第二个参数是事件触发后调用的函数。
第三个参数是个布尔值用于描述事件是冒泡还是捕获。该参数是可选的。
利用js添加一个块级元素:
<div id="div1">
<p id="p1">这是一个段落。</p>
<p id="p2">这是另一个段落。</p>
</div>
<script>
var para=document.createElement("p");
var node=document.createTextNode("这是一个新段落。");
para.appendChild(node);
var element=document.getElementById("div1");
element.appendChild(para);
js弹窗之确认框:
function myFunction(){var x;var r=confirm("是否选择!");if (r==true){x="你按下了\"确定\"按钮!";}else{x="你按下了\"取消\"按钮!";}document.getElementById("demo").innerHTML=x;
}
js弹窗之提示框:
function myFunction(){var x;var person=prompt("请输入你的名字","Harry Potter");if (person!=null && person!=""){x="你好 " + person + "! 今天感觉如何?";document.getElementById("demo").innerHTML=x;}
}
bind()方法普遍使用:
function f(y,z){return this.x+y+z;
}
var m=f.bind({x:1},2);
console.log(m(3)); // 6
bind()方法会把传入它的第一个实参绑定给f函数体内的 this,从第二个实参起,将依此传递给原始函数,因此 {x:1}传递给this ,2传递给形参y,m(3) 调用时的3 传递给形参z。
其实这个例子 f() 函数能够处理部分参数,分步计算 ( bind() 时处理了参数x,和参数y,调用 m(3)时处理了参数z )的过程其实是一个典型的Curry过程(Currying)。
javascript学习指南——先导片相关推荐
- 最棒的 JavaScript 学习指南
在过去的一年间(2017年),我们对比了近24000篇 JavaScript 文章,并从中挑选出了最好的55篇.我们做了这个目录,认为阅读有经验的程序员写的文章是一个很好的学习方式.在学习了一两门课程 ...
- 菜鸟网html dom对象,JavaScript学习指南
1.1 JavaScript基础概念: JavaScript (ECMAScript) :JavaScript 是脚本语言.JavaScript和ECMAScript通常被人用来表达相同的含义,但是J ...
- javascript学习指南,这个车架号是什么车?通过车架号查车辆信息!
<span class="sectionHeading">A Heading</span> <br /> <br /> Lorem ...
- JavaScript 权威指南-学习笔记(一)
本文所有教程及源码.软件仅为技术研究.不涉及计算机信息系统功能的删除.修改.增加.干扰,更不会影响计算机信息系统的正常运行.不得将代码用于非法用途,如侵立删! JavaScript 权威指南-学习笔记 ...
- javascript立体学习指南
javascript立体学习指南 第一章:首先了解javascript 首先,什么是javascript? JavaStrip出生于1995年,是一种文本脚本语言,成都装修公司是一种动态的.弱类型的. ...
- 干干!JavaScript学习路线指南,阅读本文即可
干干!JavaScript学习路线指南,阅读本文即可 自习/学习路线这样的一期我想写很长时间,因为一直想写的全一点硬一点,所以拖到了现在,我相信这一期对于那些还在上学或者已经工作的同学来说是有帮助的, ...
- 【JavaScript权威指南(第七版)】之阅读学习总结
写在前面 最近借着空闲时间断断续续两个月看完了<JavaScript权威指南(第七版)>,<JavaScript权威指南>一直以来被称为"犀牛书",前面的第 ...
- Javascript权威指南学习笔记一:数据类型
决定从最基础的开始学JavaScript,最近看了<<Javascript权威指南>>第3章,记些笔记备忘. 本章一个重点是类型.按我的理解应该如下表所示: 复合类型中,关联数 ...
- javascript权威指南 学习笔记之变量作用域
最近一直在看<javascript权威指南 第五版>,变量作用域这一章,看得真的有点累.不过,收获还是多多. 不知道,大家对语言中变量的"声明"与"定义&qu ...
最新文章
- 英特尔宣布McAfee成为独立的安全公司
- 对冲基金BKCM LLC创始人看涨BCH
- IIS初始化(预加载),解决第一次访问慢,程序池被回收问题
- 用 Flask 来写个轻博客 (8) — (M)VC_Alembic 管理数据库结构的升级和降级
- android 高德地图提示限速信息,高德导航不提示限速拍照了是怎么回事?该怎么办?...
- python对象列表转换为字典_python – 将csv.DictReader对象转换为字典列表...
- COMBOBOX绑定DICTIONARY做为数据源
- shadows a parameter
- layui自带验证体系:手机号验证、邮箱验证、必填项非空验证、数字验证(含代码、案例)
- 如何在jQuery中发送PUT / DELETE请求?
- 定量变量和定性变量的转换(Transform of Quantitative Qualitative Variables)
- 【中医学】8 中药-1
- Kali Linux 基于Easy File Sharing Web Server 6.9 编写漏洞渗透模块 (上)
- iReport导出Excel文件一个字段要占用多列问题的解决
- 清华非全日制计算机硕士,2021年清华大学硕士招生分析,专硕非全日制占比高达67%...
- ggplot2的自定义调色板
- android游戏开发引擎唤境制作单机俯角射击h5小游戏教程
- zigbee学习之APS数据服务
- Hive 系统性学习笔记
- 三维分析之等值线分析