var num = 1;//定义变量
alert(num);
在浏览器控制台打印变量: console.log();
坚持使用===
NaN ===NaN //false
通过isNaN()判断是否为number
js数组内可以放不同类型的对象
定义一个对象:
var person={ name:"cyt", age:19, tags:[‘js‘,‘java‘,‘web‘]};
严格检查模式,预防js随意性产生的问题,必须在js代码第一行
‘use strict‘;
多行字符串 ` ` 反引号
字符串拼接:
`ssss,${name}`
js 的数组长度可以变化!!!!
使用arr.length = 2;
slice()截取Array的一部分,返回一个新数组
push() unshift(), pop() shift() 在array中指定添加删除元素
js对象
var person ={ name: "cyt", age:3, score:0}
键值对描述属性,多个属性之间使用逗号隔开.
动态删减、增加对象的属性
delete person.name;
person.sex =" man";
判断对象是否含有某个属性(包括继承的)
‘age‘ in person
不包括继承 person.hasOwnProperty();
for( var index in field){ if(field.hasOwnProperty(num)){ console.log(age[num])}
Map
var map = new Map([[‘tom‘,11],[‘ss‘,22],[‘sss‘,3]]);
get, set(新增或修改), delete 方法
Set
var set = new Set([3,1,1,1]); //set 可以去重
add delete has
通过for of 遍历
var arr= [3,4,5]
for(var x of arr){
console.log(x)
}
JS函数
function abs(x){
if(x>=0){
return x;
}
else{
return -x;
}
}
规避参数问题
if( typeof x!==‘number‘){
throw ‘Not a Number‘;
}
arguments 代表传递进来的所有参数,是一个数组 arguments[i]
用rest获取除了定义的参数之外的所有参数
function getParameter(a,b,...rest){
console.log("a=>"+a);
console.log("b=>"+b);
console.log(rest);
}
全局变量window
window.alert();
使alert()失效
var x = ‘aaa‘;
window.alert(x);
var old_alert = window.alert;
window.alert = function(){};
//此时alert已经失效
ES6规范
建议用let代替var去定义局部变量
定义唯一全局变量
var KuangApp = {};
KuangApp.name=‘kuangshen‘;
KuangApp.add = function(a,b){
return a+b;
}
方法
var myAge={
name: ‘cyt‘;
birth:2000,
age: function(){
var now = new Date().getFullYear();
return now-this.birth;
}
kuangshen.name;
kuangshen.age();
this默认指向调用它的那个对象
分开写
function getAge(){
var now = new Date().getFullYear();
return now-this.birth;
}
var myAge={
name: ‘cyt‘,
birth:2000,
age: getAge
};
getAge.apply(myAge, [])// this 指向了myAge, 参数为空
Date
var now = new Date();
now.getDate();
now.getTime();//时间戳
concole.log(new Date(123213123));//返回当前时间
now.toLocaleString();//返回当前时间
原文:https://www.cnblogs.com/WHard2020/p/13510241.html