2017.11.10笔记
来源:互联网 发布:淘宝店如何上架宝贝 编辑:程序博客网 时间:2024/03/19 16:42
运算符
一、加法运算符
加法运算符“+”是最常用的运算符之一,但是使用却相对复杂。因为在Javascript中,加法运算符可以完成两种含义的操作,一种是算术的加法,一种是做字符串拼接。console.log(1 + 1); // 2console.log(true + true); // 2console.log(1 + true); // 2console.log('1' + 1); // 11算法步骤:
1、如果运算子是个对象,先转成原始类型的值(即先执行该对象的valueOf方法,如果结果还不是原始数据类型,再执行toString方法);
2、两个运算子都是原始数据类型以后,只要有一个运算子是字符串,则两个运算子都转化为字符串,做字符串拼接操作。
3、否则,两个运算子都转化为数值,做算术加法运算。
二、算术运算符
var i = 0;var arr6 = ['a','b','c','d'];while (i < arr6.length) { console.log(arr6[i++]); // 等同于 // console.log(arr6[i]); // i = i + 1;}
三、赋值运算符
最常见的赋值运算符就是“=”;除了=之外,还有包括“+=”、“-=”、“/=”、“=”、“%=”、“>>=”、“<<=”、“>>>=”、“&=”、“|=”、“^=”
最常用的包括“+=”、“-=”、“/=”、“=”、“%=”。
四、比较运算符
比较运算符运算的结果是一个boolean值,表示是否满足条件。== 相等、=== 严格相等、!= 不等于、!== 严格不等于、< 小于、<= 小于等于、> 大于、>= 大于等于
关于==和===
相等运算符比较两个值是否相等,严格相等运算符比较他们是否为“同一个值”。如果两个值不是同一类型,严格相等运算符直接返回false,而相等运算符会将他们转成同一数据类型,再用严格相等运算符进行比较。
五、布尔运算符
1.取反运算符
取反运算符有转换数据类型的作用。console.log(!undefined); // trueconsole.log(!null); // trueconsole.log(!0); // trueconsole.log(!NaN); // trueconsole.log(!""); // trueconsole.log(!54); // falseconsole.log(!'hello'); // false
2.且运算符“&&”
规则:如果第一个运算子的布尔值为true,则返回第二个运算子的值(注意是值,不是布尔值);如果第一个运算子的布尔值是false,则返回第一个运算子的值,且不再对第二个运算子求值。console.log(true && true); // true;console.log(false && true); // false;console.log(true && 'abc'); // 'abc';console.log('f' && 'abc'); // 'abc'console.log(NaN && 'abc'); // NaN
3.或运算符“||”
规则:如果第一个运算子的布尔值为true,则返回第一个运算子的值,且不再对第二个运算子求值;如果第一个运算子的值为false,则返回第二个运算子的值。console.log(true || false); // trueconsole.log(false || true); // trueconsole.log(false || false); // falseconsole.log(true || "abc"); // trueconsole.log(false || "abc"); // abc或运算符常用于为一个变量设置默认值
function hello(text) { text = text || 'hello'; console.log(text);}hello();
4.三元运算符
var text=(intelligence===0?'人工智障':'人工智能');console.log(text);
DOM模型
一、DOM和DOM节点
1.DOM
DOM是Javascript操作网页的接口,全称叫文档对象模型(Document Object Model)。它的作用是将网页转化为一个Javascript对象,从而用Javascript脚本进行各种操作(比如增删元素等)。2.DOM节点
DOM的最小组成单位就是节点(node)。DOM树就是由不同类型的节点组成。每个节点可以看成是DOM树上的叶子。在DOM中,节点的类型一共有7种
Document:整个文档树的顶层节点;
DocumentType:dotype标签比如:<!DOCTYPE html>
Element:网页的各种HTML标签比如:<body> <h> <a> <div>
Attribute:网页元素的属性比如:id=”id” class=”class” type=”text”
Text:标签之间或标签包含的文本
Comment:注释
DocumentFragment:文档片段
3.节点树
一个文档的所有节点,按照所在的层次,可以抽象成一个树状结构。这种树状结构就是DOM。最顶层的节点就是document类型的节点,它代表了整个文档。文档里面最高一层的HTML标签,一般是<html>,它构成树结构的根节点(root node),其他的Html标签都是它的下级。
父节点关系(parentNode):直接的那个上级节点
子节点关系(childNodes):直接的下级节点
同级节点关系(sibling):拥有同一父节点的节点
DOM提供操作接口,用来获取三种关系的节点。
获取子节点:firstChild(第一个子节点)lastChild(最后一个子节点)等
获取同级别:nextSibling(紧邻在后的同级节点)和previousSibling(紧邻在前的同级节点)
二、特征相关属性
1.Node.nodeName和Node.nodeType
console.log("document.nodeName=" + document.nodeName); // #documentconsole.log("document.nodeType=" + document.nodeType); // 9
2.Node.nodeValue
返回是一个字符串,表示当前节点本身的文本值,该属性可读写。由于只有Text节点、Comment节点和xml文档的CDATA节点有文本值,因此只有这三类节点有nodeValue,其他节点一律返回null。
console.log("p.nodeValue=" + document.getElementById("_p").nodeValue); //null
3.Node.textContent
返回当前节点和它的后代节点的文本内容,该属性是可读写的。console.log("p.textContent=" + document.getElementById("_p").textContent); // hello,worlddocument.getElementById("_p").textContent = "hello, <span color='red'>nantong!</span>";// hello, <span color='red'>nantong!</span>
阅读全文
0 0
- 2017.11.10笔记
- 笔记10
- 笔记10
- 笔记10
- 笔记10
- [笔记] 传智播客-javaWeb笔记(10)
- 2017.11.1笔记
- 2017.11.02笔记
- 2017.11.2笔记
- 2017.11.3笔记
- 2017.11.3笔记
- 2017.11.6笔记
- 2017.11.6工作日笔记
- 2017.11.6笔记
- 2017.11.7笔记
- 2017.11.8笔记
- 2017.11.8笔记
- 2017.11.09 matlab笔记
- 1032. 挖掘机技术哪家强(20)——C语言
- jsp连接数据库
- .aar 编译 与 android studio 的bug
- 使用requests+beautifulsoup模块实现python网络爬虫功能
- SpringMVC处理Ajax02
- 2017.11.10笔记
- HP laserJet Pro MFP M126nw打印机连接无线设置
- java中如何给Runnable线程传递参数?
- Android 监听双卡信号强度
- quartz定时器入门示例
- Hystrix系列之熔断器
- C#实战小技巧(三):Semaphore信号量
- windows 安装 yii
- python 金融工具包