events模块对外提供了一个 EventEmitter 对象,即:events.EventEmitter. EventEmitter 是NodeJS的核心模块events中的类,用于对NodeJS中的事件进行统一管理,使用events可以对特定的API事件进行添加,触发和移除等.我们可以通过 require('events')来访问该模块. 比如如下代码: // 引入 events 模块 const events = require('events'); console.log(events)…
1.文件类型类似于这样: 不过数据量比这个要更大一点. 2.对应上述数据的运行结果: import matplotlib.pyplot as plt with open('test.txt') as fob: lines=fob.readlines() #去除掉每行最后一个换行符,就可以正确统计了,我也真不知道是为什么 for i in range(len(lines)): lines[i]=lines[i].rstrip() #在这里要创建一个长度的list进行统计 #但是这个地方的lines…
下面6种值转化为布尔值时为false,其他转化都为true 1.undefined(未定义,找不到值时出现) 2.null(代表空值) 3.false(布尔值的false,字符串"false"布尔值为true) 4.0(数字0,字符串"0"布尔值为true) 5.NaN(无法计算结果时出现,表示"非数值":但是typeof NaN==="number") 6.""(双引号)或''(单引号) (空字符串,中间…
1.stopPropagation:阻止事件的冒泡,但不阻止事件的默认行为. 最好莫过于用例子说明: <div id='div'  onclick='alert("div");'>     <ul  onclick='alert("ul");'>         <li id='ul-a' onclick='alert("li");'><a href="http://www.baidu.com&…
Boolean 表达式 一个值为 true 或者 false 的表达式.如果需要,非 Boolean 表达式也可以被转换为 Boolean 值,但是要遵循下列规则: 所有的对象都被当作 true. 当且仅当字符串为空时,该字符串被当作 false. null 和 undefined 被当作 false. 当且仅当数字为零时,该数字被当作 false.…
起因源于一道前端笔试题: var fuc = [1,2,3]; for(var i in fuc){ setTimeout(function(){console.log(fuc[i])},0); console.log(fuc[i]); } 问:控制台会如何打印? chrome打印结果如下: 虽然setTimeout函数在每次循环的开始就调用了,但是却被放到循环结束才执行,循环结束,i=3,接连打印了3次3. 这里涉及到javascript单线程执行的问题:javascript在浏览器中是单线程…
图1 计算下面表达式的值: [''] == false 首先,两个操作数分别是对象类型.布尔类型.根据图1,需要将布尔类型转为数字类型,而false转为数字的结果是0,所以表达式变为: [''] == 0 两个操作数变成了对象类型.数字类型.根据图1,需要将对象类型转为原始类型: 首先调用[].valueOf(),由于数组的valueOf()方法返回自身,所以结果不是原始类型,继续调用[].toString(). 对于数组来说,toString()方法的算法,是将每个元素都转为字符串类型,然后用…
项目中遇到过一个问题,js拿到后台返回的一个数字,在if中判断时,出现类似123==123为false的结果, 初步分析原因,应该是返回的是string类型的,但拿来比较的是个number类型的,所以两者不相等. 写成a=="123",返回true,解决. 在chrome的console下,经测试"123"==123为true, 如下代码测试: var s="123";--undefineds==123--truevar a=123;--unde…
以前我一直认为逻辑运算符的返回值一直是true或者false,其实根本就没考虑过它又返回值,一直是在if判断语句中作为一个条件使用,只是为了能让条件正确与否进入if语句.根本就没用到逻辑运算符的返回值. let a = ''; let b = 'bb'; let c = null; //或运算返回值 并不只是 true 或 false c = a || b; console.log( a || b ,'或运算返回值'); // "bb" console.log( Boolean(a||…
  //先把非数字的都替换掉,除了数字和.和/             obj.value = obj.value.replace(/[^\-\d./]/g, ""); //必须保证第一个为数字而不是.             obj.value = obj.value.replace(/^\./g, ""); //保证只有出现一个.而没有多个.             obj.value = obj.value.replace(/\.{2,}/g, ".…