1、逻辑运算 ||  &&  !

||:遇到第一个为true的值就中止并返回

&&:遇到第一个为false的值就中止并返回,如果没有false值,就返回最后一个不是false值的true值

||和&&:&&的优先级大于||;

console.log(1&&3||0&&4);    3

console.log(4&&3-2);      1

2、作用域的问题

(1)Js代码如何执行

(2)js环境

(3)栈  堆

Js代码在客户端执行前,浏览器会给这个js一个全局环境,这个环境分两个部分,

一个是内存模块,一个是执行模块,内存模块找到当前环境下的所有带var和function的关键字,var进行变量声明,function 进行声明和定义。

执行模块逐行向下执行(会出现语句和代码块),如果是函数执行。

函数执行:会开辟一个类似于window的私有作用域,在这个私有作用域里又分两个模块,内存模块和执行模块。内存模块找出当前环境下的所有带var和function的关键字,还需要注意函数的形参,因为他也是一个私有变量,带var的进行变量声明为私有变量

Function 声明和定义都完成了,然后是执行模块逐行执行。

3、阿里面试题分析

var a=100;

function text(){

  var b=2*a;

  var a=200;

  var c=a/2;

  alert(b);  NaN

  alert(c);  100  

}

text()

4、dom对象

全称:document object model

(1)dom主要研究html中的节点(标签)对节点进行操作,改变标签,改变标签属性,改变css属性,改变css样式

添加事件等,dom的研究对象是document

(2)操作流程

a:选择你要操作的节点

document.getElementById("idname")通过id获取元素

document.getElementsByTagName("标签名")标签获取

获取整个网页中所有的div构成的一个数组集合

document.getElementsByClassName("name")通过class获取整个网页中

class叫做name的数组集合

b:输出

-document.write 在整个文档输出

-指定的元素中输出 : element.innerHTML=      innerHTML指元素中的内容

指定的元素中输出  :element.innerText=

二者的区别:前者可以嵌套标签

                       后者只能输出文本

document.getElementById("a").innerHTML="<b>jdcb sjchjbajsjab</b>"

10.23JS日记的更多相关文章

  1. 10.24JS日记

    1.函数都有返回值,人为return,返回什么就是什么,否则,他的返回值就是undefined 而方法的本质也是函数,所以也有返回值 document.getElementById()返回的是获取的标 ...

  2. 10.22JS日记

    1.js数据类型分析 (1)基础类型:string.number.boolean.null.undefined (2)引用类型:object-->json.array... 2.点运算  xxx ...

  3. 10.17JS日记

    1.变量提升 变量提升是浏览器的一个功能,在运行js代码之前,浏览器会给js一个全局作用域,叫window, window分为两个模块,一个叫做内存模块,一个叫做运行模块,内存模块找到当前作用域下的 ...

  4. 9.10 h5日记

    9.10 1.什么是属性 属性是表示某些事物的一些特征 2.属性分为标签属性和样式属性,二者的区别在于哪里 标签属性:<img src="01.jpg" width=&quo ...

  5. 10.31JS日记

    this问题 (1)this是js的一个关键字,指定一个对象,然后替代this: 函数中的this指向行为发生的主体,函数外的this都指向window,没有意义 (2)函数内的this跟函数在什么环 ...

  6. 10.19JS日记

    1.函数   关键词(function) var是js的关键字,用于声明变量,声明在内存模块完成,定义(=)是在执行模块完成 var可以在内存模块提前完成(js代码执行前),所以有变量提升这个功能 c ...

  7. 10.18JS日记

    1.JS的本质就是处理数据,数据来自后台的数据库,所以变量起到了临时存储的作用, ES制定了js的数据类型 2.数据类型有哪些? (1)字符串 String (2)数字  Number (3)布尔 B ...

  8. 10.16JS日记

    1.parseint() 2.parsefloat() 这两个单词运行的时候遇到第一个非数字就结束了 3.var a="hello word"  a这个变量为字符串,每一个字母为字 ...

  9. 10.9h5日记

    一.单位 1.px是基本的单位,像素 2.em也是一个单位,使用方式,用元素父级的字体大小乘以em前的数字,父级没有就向上一个父级找, 直到body为止,如果body没有,就用默认的字体大小16px ...

随机推荐

  1. centos6.9出现openvpn:error=certificate signature failure的处理

    原因: 将原来openwrt上用的证书复制到centos 6.9后,客户端都连不上了,查了服务器log,出现是error=certificate signature failure错误. 处理方法见帖 ...

  2. 扩展saltstack组件

    一.扩展Grains 我们知道,grains可以帮助收集minion端的静态信息.在更为复杂的业务环境中,可以使用自定义的grains帮助收集真实需要的静态或者业务信息; grains流程:  mas ...

  3. List,Set,Map集合的遍历方法

    List的三种实现:ArrayList(数组)  LinkedList(链表)  Vector(线程安全) List集合遍历方法: List<String> list = new Arra ...

  4. HDFS中的集中缓存管理详解

    一.背景 Hadoop设计之初借鉴GFS/MapReduce的思想:移动计算的成本远小于移动数据的成本.所以调度通常会尽可能将计算移动到拥有数据的节点上,在作业执行过程中,从HDFS角度看,计算和数据 ...

  5. mysql 数据导出

    windowos: select * from pj_zzspdz_fpmx  order by kprq desc LIMIT 0,1000000 into outfile 'd:\fpmx.xls ...

  6. linux安装后不显示网卡信息

    虚拟机安装CentOS 6.4之后,ifconfig只现实lo接口的信息,没有显示eth0网卡的信息,进入/etc/sysconfig/network-scripts/目录中,可以看到ifcfg-et ...

  7. metasploitable使用

    DVWA默认的用户有5个,用户名密码如下(一个足以): admin/password gordonb/abc123 1337/charley pablo/letmein smithy/password

  8. python基础之字符串常用操作总结

    字符串的索引 s = 'ABCDLSESRF' # 索引 这两个很简单没什么说的 s1 = s[0] print(s1) # A s2 = s[2] print(s2) # C 切片 s = 'ABC ...

  9. 关于CDh5.13.1 HDFS启用HA(High Availability)注意事情--(JournalNode 只有一个编辑路径)

    原因为:主机名不能为域名.更换成hadoop64 这种解决.

  10. 全国高校绿色计算大赛 预赛第二阶段(Python)第1关:统计分数的麻烦

    挑战任务 “绿盟杯”比赛过后,赛事承办方的各位工作人员们就开始分头统计各个参赛队伍和同学的成绩了.赛事规模很大,有10000个队伍参加.经过工作人员认真负责的统计,本来已经统计好了这一万个队伍的分数和 ...