(二)js基础。。。freecodecamp笔记
个人需要注意的点
当 JavaScript 中的变量被声明的时候,程序内部会给它一个初始值
undefined。当你对一个值为undefined的变量进行运算操作的时候,算出来的结果将会是NaN,NaN的意思是"Not a Number"。当你用一个值是undefined的变量来做字符串拼接操作的时候,它会输出字符串"undefined"。(变量默认初始值undfined,运算操作结果是NAN,字符串拼接结果是undfined)变量名称最佳实践驼峰命名法使用驼峰命名法来书写一个 Javascript 变量,在驼峰命名法中,变量名的第一个单词的首写字母小写,后面的单词的第一个字母大写。
特殊字符转义在 JavaScript 中,你可以通过在引号前面使用反斜杠(
\)来转义引号。单引号和双引号的功能在 JavaScript 中是相同的。
\'单引号 \"双引号 \\反斜杠 \n换行符 \r回车符 \t制表符 \b退格 \f换页符 在 JavaScript 中,
字符串的值是 不可变的,myStr[0]="A"并不会使得myStr的第一个值变为A.js数组常用方法.push()存入一个数据,.pop()移出最后一个数据,.shift()移出第一个数据,.unshift()移入一个数据到头部
在函数没有
return语句的情况下,当你调用它时,该函数会执行内部代码,返回的值是undefined。严格相等运算符(
===)是相对相等操作符(==)的另一种比较操作符。与相等操作符不同的是,它会同时比较元素的值和数据类型。3===‘3’ false, 3==‘3’ true严格不相等运算符(
!==)与全等运算符是相反的。严格相等运算符不会转换值的数据类型。3!==‘3’ true 3!=‘3’ false创建一个对象,两种取值方式
var ourDog = {
"name": "Camper",
"legs": 4,
"tails": 1,
"friends": ["everything!"]
};
//取出相应的属性
var a = ourDog.name
var b = ourDog["name"]
//像修改属性似的添加一个属性
myDog.break="woof"
//删除对象属性
delete myDog.tails;
//检查对象是否有该属性
myDog.hasOwnProperty("legs") //true
Math.random()用来生成一个在0(包括 0)到1不包括 1)之间的随机小数,因此Math.random()可能返回 0 但绝不会返回 1。生成随机整数,
Math.floor向下取整,结果为0-19Math.floor(Math.random() * 20);生成某个范围的随机整数Math.floor(Math.random() * (max - min + 1)) + minparseInt()函数解析一个字符串返回一个整数var a = parseInt("11", 2);
参数 2 表示 “11” 使用二进制数值系统。此示例将字符串 “11” 转换为整数 3。
嵌套三元运算符
num>0?"positive":num==0?"zero":"negative"判断num是大于0等于0还是小于0
js中操作数组常用的三个方法()
1. filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
filter() 不会对空数组进行检测。 filter() 不会改变原始数组。
var ages = [32, 33, 16, 40];
function checkAdult(age) {
return age >= 18;
}
function myFunction() {
console.log(ages.filter(checkAdult));
}
//输出结果
32,33,40
ES6语法
var ages = [32, 33, 16, 40];
function myFunction() {
console.log(ages.filter((age)=>age>=18));
}
2. map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。map() 方法按照原始数组元素顺序依次处理元素。
map() 不会对空数组进行检测。map() 不会改变原始数组。
//返回一个数组,数组中元素为原始数组的平方根:
var numbers = [4, 9, 16, 25];
function myFunction() {
x = document.getElementById("demo")
x.innerHTML = numbers.map(Math.sqrt);
}
//输出结果
2,3,4,5
3. reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。
reduce() 对于空数组是不会执行回调函数的。
//计算元素相加后的总和
var numbers = [65, 44, 12, 4];
function getSum(total, num) {
return total + num;
}
function myFunction(item) {
console.log(numbers.reduce(getSum));
}
//输出结果
125
ES6语法
var numbers = [65, 44, 12, 4];
function myFunction(item) {
console.log(numbers.reduce((total,num)=>total+num));
}
(二)js基础。。。freecodecamp笔记的更多相关文章
- JS基础知识笔记
2020-04-15 JS基础知识笔记 // new Boolean()传入的值与if判断一样 var test=new Boolean(); console.log(test); // false ...
- handlebars.js基础学习笔记
最近在帮学校做个课程网站,就有人推荐用jquery+ajax+handlebars做网站前端,刚接触发现挺高大上的,于是就把一些基础学习笔记记录下来啦. 1.引用文件: jquery.js文件下载:h ...
- 两万字Vue.js基础学习笔记(二)
Vue.js学习笔记(二) 4.模块化开发 ES6模块化的导入和导出 我们使用export指令导出了模块对外提供的接口,下面我们就可以通过import命令来加载对应的这个模块了 首先,我们需要在HTM ...
- js基础学习笔记(二)
2.1 输出内容(document.write) document.write() 可用于直接向 HTML 输出流写内容.简单的说就是直接在网页中输出内容. 第一种:输出内容用“”括起,直接输出&q ...
- 两万字Vue.js基础学习笔记
Vue.js学习笔记 目录 Vue.js学习笔记 ES6语法 1.不一样的变量声明:const和let 2.模板字符串 3.箭头函数(Arrow Functions) 4. 函数的参数默认值 5.Sp ...
- Javascript进阶篇——(JS基础语法)笔记整理
根据慕课网学习整理到一起的笔记,把东西整理到一起看起来比较方便 什么是变量字面意思:变量是可变的量:编程角度:变量是用于存储某种/某些数值的存储器.我们可以把变量看做一个盒子,盒子用来存放物品,物品可 ...
- node.js 基础学习笔记3 -express
1.工作原理 当通过app.js建立的服务器时,会看到一个简单的页面.返回页面时,浏览器会向服务器发送请求.app会解析请求的路径,调用相应的逻辑,调用对应的视图模板,传递对象数值,最终生成HTML页 ...
- javascript-智能社-JS基础A笔记
JavaScript基础A JavaScript组成 ECMA : 全称ECMAScript,解释器.计算机语言的翻译 DOM:全称Document Object Model,赋予了JS操作HTML的 ...
- js 基础学习笔记(一)
javascript基础 .组成部分:由 ECMAScript(翻译,核心,解释器).DOM(操作HTML的能力).BOM(浏览器window)三部分组成. 兼容性依次为 [1.几乎没有兼容性问题.2 ...
- node.js 基础学习笔记3 -http
http模块,其中封装了一个高效的HTTP服务器和一个建议的HTTP客户端 http.server是一个基于事件的HTTP服务器 http.request则是一个HTTP客户端工具,用户向服务器发送请 ...
随机推荐
- 字符串的模式匹配算法——KMP模式匹配算法
朴素的模式匹配算法(C++) 朴素的模式匹配算法,暴力,容易理解 #include<iostream> using namespace std; int main() { string m ...
- Java 获取Word批注所标记的文本和图片
[环境配置] 本文将通过Java程序代码来展示如何来获取Word批注所标注的文本和图片.这里使用的Word Jar包工具是Free Spire.Doc for Java,在pom.xml中按如下步骤配 ...
- 一个很多人不知道的SpringBoot小技能!!
大家好,我是冰河~~ 最近,发现很多小伙伴在修改了SpringBoot的配置文件后,都要重新编译整个项目,极大的浪费了开发时间.我身边就有很多小伙伴一直是这样做的.那么,有没有什么方式能够修改配置文件 ...
- C++中dynamic_cast与static_cast浅析与实例演示
1. static_cast 1.1 static_cast语法 static_cast< new_type >(expression) 备注:new_type为目标数据类型,expres ...
- LinuxMint 19/Ubuntu 19.10重置开始菜单以及任务栏
====================== 问题:任务栏以及开始菜单弄不见了 解决方法: 快捷键打开终端,输入重置命令: dconf reset -f /
- (Opencv07)绘制边框
(Opencv07)绘制边框 cv2.boundingRect(img) 这个函数可以获得一个图像的最小矩形边框一些信息 cv2.rectangle()可以画出该最小矩形边框 x, y ,w, h = ...
- SpringCloud升级之路2020.0.x版-1.背景
本系列为之前系列的整理重启版,随着项目的发展以及项目中的使用,之前系列里面很多东西发生了变化,并且还有一些东西之前系列并没有提到,所以重启这个系列重新整理下,欢迎各位留言交流,谢谢!~ Spring ...
- SQL之case when then用法_之二
select CustomerNo, Name, Sex, Birthday, IDType, IDNo, validityday, case (null ) when '1' then '高级VIP ...
- 基于STC51单片机的霓虹灯
基于STC51单片机的霓虹灯 设计要求: 使用PWM驱动8个LED灯 人眼不能观察到灯光全灭 灯光要有动画效果 设计概述: 按照设计要求,为了更直观的说明脉冲宽度调制技术(PWM),所以霓虹灯的 ...
- Apache Unomi 远程表达式代码执行漏洞(CVE-2020-13942)
影响版本: Apache Unomi < 1.5.2