首页 > 其他分享 >js学习

js学习

时间:2023-09-18 11:34:43浏览次数:59  
标签:运算符 函数 对象 数据类型 js 学习 null undefined

变量

     使用var 定义的变量,在最外层定义时,可以是使用window获取

    使用 let 和 const 时,就不行,let 和cont是从当前作用域中获取

     

   实现一个const

    

数据类型

   null、undefined 、NaN、0、空字符串  会在转换成布尔值的时候转化为false

for循环

     可以使用break提出循环

算数运算符

    二元运算符   +  -   *  /   %    **       加、减、乘、除、余、次方

    一元运算符:1.一元正号,不参与计算而是把其它类型转换成数字  

                             

                        2.一元负号,也是把其它类型转换为数字,但是前面会加上负号

逻辑运算符

     1.!! 双重非,通常将数据类型转化成布尔值

函数

     函数声明写法会自动提升到最上面,函数表达式不会被提升

     函数可以使用arguments获取所有参数

对象

     Object.create也能创建对象,但必须传递一个对象作为参数,传递的参数会成为新对象的原型

      

数字

    0.1+0.2!==0.3  原因就是因为 在计算器中所有都是由二进制表示,而0.1和0.2都是无穷二进制表示,会被计算器截断 

     

     解决计算精度方法:

         1.使用toFixed()   强制保留小数点后位数

         2.将运算的小数扩大到10倍、100倍....,就是变成整数后计算,在除以倍数

   NaN 是 not a Number 的意思

    

数组

    数组中empty和undefined的区别

         empty表示空位,不是一种数据类型 是由于人为修改arr.length或写入时多写逗号造成的,使用forEach会忽略空位,是用for会转化为undefined并遍历

         undefined是一种数据类型,只是值未定义

JSON

      JSON.stringify中第三个参数可以控制格式

        

 事件

      自定义事件  Event和CustomEvent都可以,CustomEvent注册的自定义事件可以在detail中传递参数

       

 

typeof   

      typeof null  会输出一个object,原因是 null表示一个空指针,内部又和对象一样,所有就会object

      typeof 经常被用来检测基础类型,但是不够准确,无法区分数组、对象、null,更精准的检测应考虑使用 Object.prototype.toString 方法

debugger 调试

     

 对象中的getter和setter

    

 也可以使用Object中deineProperty方法设置

   

new操作符和构造函数

         

 

       当使用new运算符调用函数时,大致会进行一下几个操作

       1.创建一个空对象

       2.将函数的this指向这个空对象

       3.执行函数

       4.如果函数没有指定返回值,则直接返回this(一开始创建的空对象),否则返回指定返回值

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

     

 

标签:运算符,函数,对象,数据类型,js,学习,null,undefined
From: https://www.cnblogs.com/fanbulaile/p/17693302.html

相关文章

  • vb.net 开发 excel Addin 学习(5)---- 几个小问题
    在做 excelAddin开发的时候越到了几个小问题。总结一下。一,Addin无缘无故不加载。没有任何痕迹可查询。解决方法: 可能是Excel禁止了你的addin,也就是你的addin被列入了黑名单,如果真是这样,看一下下面的(有图示说明),或许可以解决问题。在Excel2003中,点击标题栏中的......
  • 基于可视化的可解释深度学习模型研究综述--草稿版
    ps:近期组会整理了一篇论文综述,先记录在案。摘 要: 深度学习能目前广泛应用于各个领域内,比如:医疗、交通以及娱乐等领域。随着社会的计算机算力的迅速增长以及GPU等硬件的支持,催生了一系列人工智能应用,例如医疗诊断、自动驾驶和个性化推荐等。得益于这一系列应用,人类社会生产......
  • js中查询一段文本并选中查到的所有匹配能实现吗?
    有一个csdn网友遇到了这样的问题,想在一段文本中查询,然后选中匹配了的所有内容。但是单纯从需求来讲,我认为是无法实现的。我给出的解释是:在文本框中同时选中不连续的片断是不可能的。但是如果是非文本框中的文本,可以通过改变字体颜色和背景的方法来模拟不连续片断的同时选中效果......
  • 一段动态滚动公告栏的js代码
    代码如下:<spanstyle='visibility:hidden;'><spanid="pm1">公园小路上,男正对女发誓。男:我爱你,直到大海干枯。女:不行,冰川期到时,海平面回下降。男:我爱你,直到地球毁灭。女:不行,一颗慧星撞过来,地球就没了。男:我爱你,直到中国电信实行手机单向收费!女:太美了。接吻声——————......
  • 在一个js文件中包含另一个js文件的方法
    ---------a.htm---------<scriptlanguage='javascript'src="a.js"></script><scriptlanguage="javascript">jin();liu();</script>--------a.js--------document.write("<scriptlanguage=&#......
  • 当页面中文本不允许选择时,使文本框中文本可以选择的js代码
    <bodyonselectstart="returnoSelect(event.srcElement);"><scriptlanguage="javascript">functionoSelect(obj){if(obj.type!='text')returnfalse;}</script><inputtype="text"name=&quo......
  • C# 学习
    C#学习基础知识.net两种交互模式:C/S:客户机Client/服务器Server模式B/S:浏览器Browser/服务器模式Server模式注释三种方法1.//2./**/3.///自动跳出文档注释快捷键快速对齐:Ctrl+k+d,若有语法错误,则无效(VB默认自动对齐,C#则没有)弹出智能提示:Ctrl+j折叠代码#r......
  • 软件测试学习笔记
    软件测试学习笔记  看视频写笔记  目标:能复述软件测试的定义——使用技术手段验证软件是否满足需求。      能说出7种测试分类的区别      能说出质量模型的重点5项      能说出测试模板8个要素      能针对穷举场景设......
  • epplus 库 学习使用
    EPPlus是一个用于操作Excel文件的C#库,它提供了简单易用的API,可以让开发人员轻松读取、创建和编辑Excel文件。简单使用:ExcelPackage类:表示一个Excel文件,可以使用工作簿(Workbook)和工作表(Worksheet)来操作该Excel文件。它包含以下常用属性和方法:Workbook:表示Excel文件中的......
  • JS装饰器模式,让你的代码更优雅
    装饰器模式JavaScript装饰器模式是一种常用的设计模式,它可以让你在不改变原有代码的情况下,动态地给对象添加新的功能。本文将通过一个实际的例子来介绍JavaScript装饰器模式的使用方法和优势。装饰器模式的定义装饰器模式是一种结构型设计模式,它允许你在运行时动态地给一个对象......