首页 > 其他分享 >js基础01

js基础01

时间:2022-11-03 22:35:34浏览次数:60  
标签:arr 01 基础 js var let 字符串 属性

Exercise



Test01



严格检查模式strict

'use strict';   //预防js的随意性导致产生的一些问题,必须放在第一行
let i = 1;      //局部变量建议都用let定义


数据类型

数值、文本、图形、音频、视频......

变量:

var 清清 = "wjx"; 

Number(js不区分小数和整数)

123          //整数
123.1        //浮点数
1.123e3      //科学计数法
-99          //负数
NaN          //not a number
Infinity     //无限大

布尔值:true,false

逻辑运算:&&,||,!

比较运算符:=,=(绝对等于,类型和值都一样)。

    注:NaN===NaN,这个与所有的数值都不相等,包括自己,只能通过isNaN(NaN)来判断这个数是否是NaN。

浮点数问题:尽量避免使用浮点数进行运算,存在精度问题。

console.log((1/3) === (1-2/3))                    //false
console.log(Math.abs(1/3-(1-2/3))) < 0.0000001    //true(使用绝对值判断)

null和undefined:

null:空,undefined:未定义

字符串

js不区分字符和字符串,字符串不可变

1)注意转义字符 \

'\''           //单引号
'\n'           //换行
'\t'
'\u4e2d'       //\u####   Unicode字符
"\x41"         //Ascll字符/

2)多行字符串编写:``

var msg = 
    `a
    b
    c`

3)模板字符串

let name = 'jiiucheng';
let age  = 3;
let msg  = `你好,${name}`

4)字符串长度:str.length

5)大小写转换:(student.toUpperCase()) //这里是方法,不是属性

6)打印下标索引:str.indexOf('c')

7)截取区间为 [ , ) 的字符:substring(2,4) //左闭右开

数组

Array可以包含任意的数据类型

var arr = [1,2,3,4,5,6];     //通过下标取值和赋值,如果越界了,打印undefined
arr[0]
arr[0] = 1

1)长度:arr.length(加入给arr.length赋值,数组大小就会发生变化,如果赋值过小,元素丢失)

2)indexOf:通过元素获得下标索引(字符串的"1"和数字1不同)

3)slice():截取Array的一部分,返回一个新数组(左闭右开)

4)push(),pop() 尾部:push:压入到尾部

            pop:弹出尾部的一个元素

5)unshift(),shift() 头部:unshift:压入到头部

              shift:弹出头部的一个元素

6)排序sort()

7)元素反转reverse()

8)concat():拼接,并没有修改数组,只是会返回一个新的数组

9)连接符join:打印拼接数组,使用特定的字符串连接

10)多维数组

arr = [[1,2],[3,4],["5","6"]];

对象

若干个键值对,js中所有的键都是字符串,值是任意对象

js中{...}表示一个对象,键值对描述属性 xxxx: xxxx,多个属性之间使用逗号隔开,最后一个属性不加逗号!

var 对象名 = {
    属性名: 属性值,
    属性名: 属性值,
    属性名: 属性值,
}
var person = {
    name:  "huahai",
    age :  21,
    email: "[email protected]",
    score: 100
}

1)对象赋值:person.name = "jiuicheng"

2)使用一个不存在的对象属性,不会报错,只会undefined

3)动态的删减属性:通过delete删除对象的属性

4)动态添加:直接给新的属性添加值即可

5)判断属性值是否在这个对象中:'xxx' in xxx

6)判断一个属性是否是这个对象自身拥有的:hasOwnProperty()

标签:arr,01,基础,js,var,let,字符串,属性
From: https://www.cnblogs.com/RRubp/p/16856066.html

相关文章

  • 01-分布式系统概述&大数据技术生态体系
    目录​​一,什么是分布式系统​​​​1,概念​​​​2,特点​​​​3,典型问题​​​​二,CAP定理​​​​1,C、A、P​​​​2,CAP定理​​​​三,BASE理论​​​​1,BA、S、EC​​​......
  • 20201318李兴昕第十二章学习笔记
    第十二章:块设备I/O和缓冲区管理知识点归纳总结:本章讨论了块设备I/O和缓冲区管理;解释了块设备I/O的原理和I/O缓冲的优点;论述了Unix的缓冲区管理算法,并指出了其不足之......
  • 解决本地浏览器运行项目时的跨域问题-Access to XMLHttpRequest at ‘file:///D:/WebP
     解决本地浏览器运行项目时的跨域问题-AccesstoXMLHttpRequestat'file:///D:/WebPracties/xxxxxx/data/funData.json问题描述解决办法一解决办法二解决方法三问题描......
  • 狂神说java基础——面向对象编程
    面向对象编程(oop)1、什么是面向对象(00)面向过程:线性思维面向对象:分类思维​ 本质:以类的方式组织代码,以对象的形式阻止(封装)数据三大特性:封装,继承,多态2、回顾方......
  • 解决Server2012r2 服务器 中文乱码
    已解决,解决方法如下:我在输入chcp936时报错invalidpagecode,就按此处理,需要的人可自取现象:命令行中中文字符显示为问号,输入chcp936会提示invlalidpagecode.解决......
  • 数字影视技术基础回顾
    数字影视技术基础回顾前言昨天晚上看《元气满满的哥哥》,下意识地用镜头去欣赏综艺界面的拍摄手法,于是今天顺便回顾一下大二学的数字影视技术基础。本来以为内容没多少的,结果......
  • Windows 10下基于Visual Studio 2019编译配置VTK 8.2.0
    参考:https://blog.csdn.net/weixin_42694889/article/details/1159645331、下载并安装VisualStudioCommunity2019、CMake3.19.0;2、下载VTK8.2.0并解压:https://vt......
  • Controller输出JSON数据 乱码解决方案
    ​我们可以在springmvc的配置文件上添加一段消息StringHttpMessageConverter转换配置!<mvc:annotation-driven><mvc:message-convertersregister-defaults="true">......
  • 福建WC2014 路径权值(Kruskal重构树 + 树状数组)
    题目描述:给定一个带权树,树上任意两点间的路径权值\(d\left(x,y\right)\)定义为\(x,y\)这两个点之间路径上的最小值,树上任意一点x的权值定义为这个点到树上其他所有点......
  • SYSU-SSE 3D游戏编程与设计 学习笔记(3)--游戏对象与图形基础
    前言中山大学软件工程学院3D游戏编程与设计课程学习记录博客游戏代码:游戏代码基本操作演练在AssetStore上下载一个天空盒资源并在PackageManager导入在......