JS基础知识--每日学习总结①

<每周打卡1st.Aug> 本板块旨在记录自己每日所学,以便闲暇时间复习。有问题还望大家能够及时指出。

2020-7-28:

  1. 函数中的return一次只能返回一个值,比如在求和中:return num1+num2;如果还想要返回num1-num2,不能写成return num1+num2, num1 - num2;但是可以使用数组返回多个值。如:return [num1 + num2, num1 - num2, num1 * num2, num1 / num2];

  2. 特殊情况下,在函数内部不使用var 声明的变量也是全局变量。(不建议使用)

  3. 全局变量:在任何一个地方都可以使用,只有在浏器关闭时才会被销毁,因此比较占内存。

  4. 局部变量∴只在函数内部使用,当其所在的代码块被执行时,会被初炲化;当代码块运行结束后,就会被销毁,因此更节省内存空间。 (函数的形参实际上就是局部变量)

  5. arguments 里面存储了所有传递过来的实参 。有时候我们不知道调用函数时到底会有几个实参,这时可以用arguments来获取。arguments展示形式是一个伪数组,因此可以遍历。运用时可以不写形参,比如function  fn(){ for (var i=0; i< arguments. length; i++){ console. log(arguments[i]); } }   fn(1, 2, 3, 4, 5);


2020-7-29:

  1. 标识符就是开发人员为变量、属性、函数、参数取的名字。

  2. 创建对象有三种方式:①利用字面量创建对象、如:var object = { 属性名:属性值 ,(注意这里是用的逗号隔开)getSum : function(){} } ,对象的调用如:alert(变量object . 属性名),②使用new 操作符 后跟object构造函数创建对象、如:var obj = new Object();(注意使用分号隔开)obj.uname = ‘张三’;obj.age = 18;obj. getSum = function(){} , 对象的调用如:alert(变量名obj.uname 或者 obj['age']);③利用构造函数创建对象


2020-7-30:

  1. 可以在switch语句中使用任何数据类型,每个case的值不一定是常量,可以是变量,甚至是表达式。

  2. 创建数组有两种方式:①数组字面量表示法,②利用new Array构造函数 。

  3. 检测数组:①value instanceof Array 该方法假定只有一个全局执行环境   ②Array .isArray(value)不管是在哪个全局执行环境中创建的。  其中的value相当于:  var arr = [ ]中的arr 。

  4. ①在数组末尾添加一个或多个元素,value.push(参数1....), 返回值是新的长度。②在数组末尾删除最后一个元素 ,value.pop() ,返回值是它删除的第一个元素的值。 ③在数组的开头添加一个或多个元素,value.unshift(参数1...), 返回值是新长度。 ④在数组的开头删除第一个元素, value.shift(), 返回值是它删除的第一个元素的值。

  5. 数组的排序:①反转数组:value.reverse() , ②数组排序(冒泡排序):value.sort()。该方法会调用每个数组项的toString()转型方法,然后比较得到的字符串。(出现的问题是:'10'会排在'5'的前面)  解决办法是:接收一个比较函数作为sort()的参数。

  6. 查找特定项在数组中的位置(数组索引):①从数组的开头开始向后查找: value.indexOf(参数1:要查找的项 , 可选参数2:表示要查找起点位置的索引) ②从数组的末尾开始向前查找 :value.lastIndexOf(参数1 , 可选参数2)。 没找到的情况下返回 -1

  7. 数组转换为字符串:①value.toString() ,逗号分隔每一项 。②value.join(' 自定义分隔符如-& ')

  8. 操作数组中的项:①var value2 = value.concat(接受一个或多个数组),返回一个新数组,不影响原数组。 ②数组截取:value.slice(begin,end)两个参数的情况下返回起始到结束位置之间的项,但不包括结束位置的项。一个参数的情况下返回从该参数指定位置开始到当前数组末尾的所有项。  ③数组删除:value.splice(第几个开始,要删除的个数) ,返回被删除的项。


2020-7-31:

  1. 不同的数据所需占用的存储空间是不同的,所以定义了不同的数据类型。

  2. js中八进制前面加0,十六进制前面加0x。

  3. 字符转义符(如:\n换行  \t缩进 \b空格 \'单引号)必须写到引号里。

  4. 字符串拼接:拼接前会把与字符串相加的任何类型转换成字符串(如‘11’+ 12 =‘1112’)

  5. 字面量是在源代码中一个固定值的表示法,通俗来说,就是字面量表示如何表达这个值(如数字字面量;8,9,2  字符串字面量:‘hello’)。标识符就是指开发人员为变量,属性,函数,参数取得名字。

  6. 转换成字符串的方法:①value.toString(); ②String(value) ③隐式转换+

  7. 字符型转换为数字型:①parseInt(string),转换成整数,②parseFloat(string)③Number(string)强制转换。

  8. 短路运算:①逻辑与:表达式1&&表达式2: 如果第一个表达式的值为真,则返回表达式2.。 如果第一个表达式的值为假,则回表达式1。  ②逻辑或:表达式1 || 表达式2   如果第一个表达式的值为真,则返回表达式1   ,如果第一个表达式的值为假,则返回表达式2 。逻辑与比逻辑或优先级高

  9. 当我们不确定有多少个参数传递的时候,可以用arguments来获取。(arguments实际上是当前函数的一个内置对象,它的展现形式式一个伪数组)

  10. 获取日期的总的毫秒数的放法:①var date = new Date()  date.valueOf()  或者 date.getTime() ②简单的写法:var date = +new Date  ; alert(date)  ③alert(Date.now());


2020-8-8:

  1. 返回触发事件的对象:①e.srcElement非标准:ie-6~8使用;②e.target(标准):即指向我们点击的那个对象,谁触发了这个事件,就返回谁,比如给ul绑定点击事件,但是我们点击的是li的话,返回的就是li 。值得注意的是:this返回的是绑定事件的对象,如给ul绑定点击事件,点击的是li的话,返回的还是ul 。
  2. 返回事件的类型:e.type 比如:click mouseover mouseout
  3. 阻止默认行为(事件),让链接不跳转或者让提交按钮不提交:①e.preventDefault();  ②e.returnValue
  4. 阻止事件冒泡:①标准写法:e.stopPropagation();  ②非标准(ie-6~8):e.cancelBubble = true;

2020-8-9:

  1. 基本数据类型:string, number, boolean,null, undefined 特征:基本数据类型数据赋值给某一个变量之后值 本身就不会再发生改变。
  2. 引用数据类型:object, array, function   特征:引用数据类型的值 可以通过其赋值的变量修改。
  3. 问:判断数据类型:typeof返回值有几种??? 答:String, Number, Boolean, Undefined, Function, Object 特殊:null和array的返回值也为 Object
  4. 鼠标事件对象:①返回鼠标相对于浏览器窗口可视区的X(Y)坐标:e.clientX ②返回相对于文档页面的X(Y)坐标(ie9+支持):e.pageX ③相对于电脑屏幕的X(Y)坐标:e.screenX
  5. 键盘事件对象:①onkeyup(松开时触发),②onkeydown(按下时触发),③onkeypress(按下时触发,但不识别功能键如:ctrl shift ↑) 键盘事件对象的属性是:keyCode(返回该键的ASCII值,其中onkeyup和onkeydown不区分字母大小写,onkeypress区分大小写,如a和A返回的ASCII值不同)
  6. 调整窗口大小事件:onresize
  7. 回调函数callback:如①setTimeout(function(){....}, 2000) ②element.onclick = function(){...} ③element.addEventListener('click' , function(){...}) 里面的函数都是回调函数。
  8. 停止setTimeout()定时器:window(可以省略).clearTimeout(timeoutID)
  9. 每个一段时间重复调用一个函数:window(可以省略).setInterval(调用函数,延时时间);
  10. 异步任务是通过回调函数实现的:①普通事件:如click resize  ②资源加载:如load  error  ③定时器:如setInternal  setTimeout
  11. url统一资源定位符:Uniform Resource Locator 是互联网上标准资源的地址。location对象的属性:①location.href获取或者设置整个URL  ②location.search返回参数
  12. location对象方法:①location.assign(网址) 和href一样可以跳转页面,但是这个可以记录浏览历史,所以可以实现后退功能。②location.replace(网址)替换当前页面,不记录浏览历史,不能实现后退功能,③location.reload()重新加载页面,相当于刷新按钮。如果参数为true则强制刷新。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值