js 基础用法
点击事件
    <!-- 第一种点击事件方式 -->
  <!-- <div class="div" onclick="alert(0)">
    <!-- 点我 -->
  <!-- 第二种点击事件方式 -->
 <div class="div" >     
 点我
    </div>
<!-- <script>
        // 第二种点击事件方式
        window.onload=function(){
          var div=document.querySelector(".div");
          div.onclick=function(){
              alert(1);
          }
        }
    </script> -->
 
 <div class="div" >
        <!-- 第三种点击事件方式 -->
 点我
    </div>
<script src="./01js.js"></script> 链接
   window.onload=function(){
          var div=document.querySelector(".div");
          div.onclick=function(){
              alert(1);
          }
        }
   <!-- 第四种 点击事件方式-->  空连接不做任何跳转
<a href="javascript.void(0)">空连接</a>
 
js 基础语法
javascript  六种基本数据类型
Number  数值  整数和小数
 string   字符串 (字符) "" ""
 bool   true/false
 null 没有
 undefined 未定义
 symbol  es6
 
 js 有哪些内置对象
(1) Object 是 JavaScript 中所有对象的父对象
(2) 数据封装类对象:Object、Array、Boolean、Number 和 String
(3) 其他对象:Function、Arguments、Math、Date、RegExp、Error
 
object: 正则表达式 数组对象  字面量(json对象) function :
// json xml 字数传输
// 序列化 反序列化
// JSON.stringify() 序列化
// JSON.parse() 反序列化
 

json.stringify语法实例讲解

语法: 
  JSON.stringify(value [, replacer] [, space])

  • value:是必选字段。就是你输入的对象,比如数组,类等。
  • replacer:这个是可选的。它又分为2种方式,一种是数组,第二种是方法。

  情况一:replacer为数组时,通过后面的实验可以知道,它是和第一个参数value有关系的。一般来说,系列化后的结果是通过键值对来进行表示的。 所以,如果此时第二个参数的值在第一个存在,那么就以第二个参数的值做key,第一个参数的值为value进行表示,如果不存在,就忽略。

  情况二:replacer为方法时,那很简单,就是说把系列化后的每一个对象(记住是每一个)传进方法里面进行处理。

  • space:就是用什么来做分隔符的。

  1)如果省略的话,那么显示出来的值就没有分隔符,直接输出来。
  2)如果是一个数字的话,那么它就定义缩进几个字符,当然如果大于10 ,则默认为10,因为最大值为10。
  3)如果是一些转义字符,比如“\t”,表示回车,那么它每行一个回车。 
  4)如果仅仅是字符串,就在每行输出值的时候把这些字符串附加上去。当然,最大长度也是10个字符。

// + - * /   %
  +"字符串运算 连接字符串"

// %==取余

// js 当中有余数这一说,但是其他的会有(标准的语言)

// 因为JS 中整数和小数都有余数

js中%什么意思

1、在Javascript中,在语句执行中,%代表取模,俗称取余数,例如

10%10

return value: 0

10%20

return value: 10

2、在浏览器地址编码中,%可以代表一个编码的开始,例如

%20         代表的是空格

eg:
var a=3-"1";
console.log(a);
//
var a=1/"3";
console.log(a);
//
var a=(0.1*10+0.2*10)/10;
console.log(a==0.3);

面试题:

为什么0.1+0.2=0.30000000000000004 使用js回答这个问题 
// (0.1*10+0.2*10)/10;
//  =  ==和===的不同
// = 赋值
// ==之比较“转化成同一类型后的值”看“值”是否相等  “值”
eg:
console.log(a=2);  // 2  
console.log(a=="2"); // true
console.log(a==="2");// false
 
// parseInt 转化 取整 81.5 //81
// parseFloat
// isNaN Not a Number

// eg:

var a=parseInt('8a6.99');
console.log(a);

eg:

var a=parseInt('86.5+0.5'); //86
console.log(a);
//函数 含参数含返回值
// arguments 参数数组 (所有的数据都能传出)   伪数组可以当数组使用 有下标
function sum(a,b){
    console.log( arguments);
    console.log(a);
    return 1;
}
var a=sum(3,4,5,8,9);
console.log(a);// 7
eg:
var arr=new Array();
arr[0]=0;
arr[1]=1;
arr[2]=2;
console.log(arr);
var arr=[1,"2",3,function(){}];
console.log(arr);

// arr.shift(); 头部删除
// arr.unshift(); 头部添加
// arr.push();尾部添加
// arr.pop();尾部删除
var arr=[1,2,3,4,5];
arr.shift();
arr.unshift(2);
arr.push(2);
arr.pop();
console.log(arr);
//可以查看删除的元素
var arr=[1,2,3,4,5];
// var res=arr.pop();
// console.log(arr,res);
//开始位置 删除个数 ...添加数据(替换)
arr.splice(2,1,8); (2,1,8)
console.log(arr);

js 基本用法和语法的更多相关文章

  1. node.js学习(二)--Node.js控制台(REPL)&&Node.js的基础和语法

    1.1.2 Node.js控制台(REPL) Node.js也有自己的虚拟的运行环境:REPL. 我们可以使用它来执行任何的Node.js或者javascript代码.还可以引入模块和使用文件系统. ...

  2. js 正则练习之语法高亮

    原文:js 正则练习之语法高亮 学了几天正则,差不多该总结整理写成果了,之前就想写语法高亮匹配来着,不过水平不够,看着例子都不理解.今天就分析下 次碳酸钴 和 Barret Lee 语法高亮实现. 先 ...

  3. 针对单个 js 文件禁用 ESLint 语法校验

    问题描述: 在 Vue-cli 创建的项目中,使用了 ESLint 规范代码的项目中 如何针对单个 js 文件禁用 ESLint 语法校验,但整个项目依然保留 ESLint 的校验规则? 解决方案: ...

  4. Shader的基本用法和语法结构

    Shader的基本用法和语法结构 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 1 Introductio ...

  5. 让 Node.js 支持 ES6 的语法

    为了让 Node.js 支持 ES6 的语法, 需要使用 Babel. 安装 es-checker 在使用 Babel 之前 , 我们先检测一下当前 node 对 es6 的支持情况. 在命令行下执行 ...

  6. JS的DOM操作语法

    整理了一下JS的DOM操作语法,这里做下记录. <!DOCTYPE html> <html> <head> <meta charset="utf-8 ...

  7. JS的BOM操作语法

    整理了一下JS的BOM操作语法,这里记录一下. <!DOCTYPE html> <html> <head> <meta charset="utf-8 ...

  8. JS程序的基本语法

    JS程序的基本语法 JS是区分大小写的.如:Name和name是两个变量 JS中每一条语句,一般以英文下的分号(;)结束.这个分号不是必须的.为了向PHP兼容,最好加上分号. 运算符和变量,以及操作之 ...

  9. 让Node.js支持ES6的语法

    使用命令,全局安装es-checker: cnpm install -g es-checker 安装好之后,执行以下命令来查看Node.js对ES6的支持情况. es-checker 可以从输出中查看 ...

随机推荐

  1. PHP获取目录中的全部内容RecursiveDirectoryIterator

    这次我们来介绍一个SPL库中的目录迭代器,它的作用其实非常简单,从名字就可以看出来,就是获取指定目录下的所有内容.之前我们要遍历目录获取目录及目录下的所有文件一般是需要进行递归遍历的,自己写这个代码说 ...

  2. Hadoop-3.1.3安装

    0.创建用户并付权限 sudo useradd iwbdsudo passwd iwbd 配置iwbd用户具有root权限 修改/etc/sudoers文件,找到下面一行(91行),在root下面添加 ...

  3. Oracle Haip无法启动问题学习

    一.目标:Oracle Haip 启动报错 需求:日常运维过程中,已经遇到两次由于HAIP引发的问题,特此进行记录. 本次问题是看着大佬-李海清操作,整完了记录一下,上一次HAIP折腾了4个小时. O ...

  4. jmeter5.2 性能测试 资源监控 JMeterPlugins1.4 ServerAgent2.2.1

    一.性能工具的安装部署 1.下载JMeterPlugins-Standard-1.4.0.zip的安装包 2.解压JMeterPlugins-Standard-1.4.0.zip,将其中\lib\ex ...

  5. 解决跨域、同源策略-React中代理的配置

    React中代理的配置 主要是解决同源策略的问题 何为同源策略? 因为我们React在3000端口,Vue在8080端口,而后台接口往往在5000,这种不同的端口之间就是一种跨域的问题了 axios发 ...

  6. 鸿蒙内核源码分析(调度队列篇) | 内核有多少个调度队列 | 百篇博客分析OpenHarmony源码 | v6.05

    百篇博客系列篇.本篇为: v06.xx 鸿蒙内核源码分析(调度队列篇) | 内核有多少个调度队列 | 51.c.h .o 任务管理相关篇为: v03.xx 鸿蒙内核源码分析(时钟任务篇) | 触发调度 ...

  7. ubuntu18.04 kuebadm 安装 k8s-1.15.9

    ubuntu kubeadm 搭建kubernetes1.15.9 准备 update && 安装docker apt-get update apt install docker 修改 ...

  8. P5369-[PKUSC2018]最大前缀和【状压dp】

    正题 题目链接:https://www.luogu.com.cn/problem/P5369 题目大意 一个数列\(a\)的权值定义为\(max\{\sum_{i=1}^ka_i\}(k\in[1,n ...

  9. Redis多种数据类型以及使用场景

    SDS简单动态字符串 struct sdshdr { // 记录buf数组中已使用字节的数量 // 等于SDS所保存字符串的长度 int len; // 记录buf数组中未使用字节的数量 int fr ...

  10. Incorrect datetime value: 时间添加失败原因

    在进行单元测试中通过 new Date() 方式添加时间时,报了 Data truncation: Incorrect datetime value:这样的错误(我数据库表的时间类型是 datetim ...