JavaScript是一门完备的动态编程语言,因为JavaScript的强大功能,逐渐成为前端编程的必学语言之一。那么如何快速上手JavaScript呢?今天SimpleTense就为大家总结JavaScript的常用代码,希望对大家的学习有所帮助。
Javascript常用代码:基本语法
JavaScript 是区分大小写的,使用 Unicode 字符集
语句用分号(;)进行分隔
js 是动态类型语言,声明、重新赋值时不用指定变量
// 单行注释
/* 多行注释 */
– 一般用 console.log(x) 将变量打印进行查看
可以用 window.alert(x) 弹出变量值进行调试
在网页内 <script>alert(“我的第一个 JavaScript”);</script>
引用外部 <script src=”my.js”></script>
函数一般无结果时,返回值为 -1
debugger; 可以此行暂停执行
Javascript常用代码:数据类型
类型 说明 举例
布尔值 Boolean 真假,只有两个值 true 和 false
null 空值 null
undefined 变量未定义时的属性 undefined
数字 Number 整数或浮点数 44, 9.884, -5
整数 BigInt 存储和操作大整数 98643411144
字符串 String 表示文本值的字符序列 “gairuo”
代表Symbol 实例唯一且不可改变 ECMAScript 6 新添加
对象 Object
对象包含:
Function(函数)
Array(数组)
Date(日期)
RegExp(正则表达式)
Javascript常用代码:常见代码片段
1、邮箱
export const isEmail = (s) => {
return /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((.[a-zA-Z0-9_-]{2,3}){1,2})$/.test(s)
}
2、手机号码
export const isMobile = (s) => {
return /^1[0-9]{10}$/.test(s)
}
3、电话号码
export const isPhone = (s) => {
return /^([0-9]{3,4}-)?[0-9]{7,8}$/.test(s)
}
4、是否url地址
export const isURL = (s) => {
return /^http[s]?:\/\/.*/.test(s)
}
5、是否字符串
export const isString = (o) => {
return Object.prototype.toString.call(o).slice(8, -1) === ‘String’
}
6、是否数字
export const isNumber = (o) => {
return Object.prototype.toString.call(o).slice(8, -1) === ‘Number’
}
7、是否boolean
export const isBoolean = (o) => {
return Object.prototype.toString.call(o).slice(8, -1) === ‘Boolean’
}
8、是否函数
export const isFunction = (o) => {
return Object.prototype.toString.call(o).slice(8, -1) === ‘Function’
}
9、是否为null
export const isNull = (o) => {
return Object.prototype.toString.call(o).slice(8, -1) === ‘Null’
}
10、是否undefined
export const isUndefined = (o) => {
return Object.prototype.toString.call(o).slice(8, -1) === ‘Undefined’
}
11、是否对象
export const isObj = (o) => {
return Object.prototype.toString.call(o).slice(8, -1) === ‘Object’
}
12、是否数组
export const isArray = (o) => {
return Object.prototype.toString.call(o).slice(8, -1) === ‘Array’
}
13、是否时间
export const isDate = (o) => {
return Object.prototype.toString.call(o).slice(8, -1) === ‘Date’
}
14、是否正则
export const isRegExp = (o) => {
return Object.prototype.toString.call(o).slice(8, -1) === ‘RegExp’
}
15、是否错误对象
export const isError = (o) => {
return Object.prototype.toString.call(o).slice(8, -1) === ‘Error’
}
16、是否Symbol函数
export const isSymbol = (o) => {
return Object.prototype.toString.call(o).slice(8, -1) === ‘Symbol’
}
17、是否Promise对象
export const isPromise = (o) => {
return Object.prototype.toString.call(o).slice(8, -1) === ‘Promise’
}
18、是否Set对象
export const isSet = (o) => {
return Object.prototype.toString.call(o).slice(8, -1) === ‘Set’
}
export const ua = navigator.userAgent.toLowerCase();
19、是否是微信浏览器
export const isWeiXin = () => {
return ua.match(/microMessenger/i) == ‘micromessenger’
}
20、是否是移动端
export const isDeviceMobile = () => {
return /android|webos|iphone|ipod|balckberry/i.test(ua)
}
21、是否是QQ浏览器
export const isQQBrowser = () => {
return !!ua.match(/mqqbrowser|qzone|qqbrowser|qbwebviewtype/i)
}
22、是否是爬虫
export const isSpider = () => {
return /adsbot|googlebot|bingbot|msnbot|yandexbot|baidubot|robot|careerbot|seznambot|bot|baiduspider|jikespider|symantecspider|scannerlwebcrawler|crawler|360spider|sosospider|sogou web sprider|sogou orion spider/.test(ua)
}
23、是否ios
export const isIos = () => {
var u = navigator.userAgent;
if (u.indexOf(‘Android’) > -1 || u.indexOf(‘Linux’) > -1) { //安卓手机
return false
} else if (u.indexOf(‘iPhone’) > -1) {//苹果手机
return true
} else if (u.indexOf(‘iPad’) > -1) {//iPad
return false
} else if (u.indexOf(‘Windows Phone’) > -1) {//winphone手机
return false
} else {
return false
}
}
24、是否为PC端
export const isPC = () => {
var userAgentInfo = navigator.userAgent;
var Agents = [“Android”, “iPhone”,
“SymbianOS”, “Windows Phone”,
“iPad”, “iPod”];
var flag = true;
for (var v = 0; v < Agents.length; v++) {
if (userAgentInfo.indexOf(Agents[v]) > 0) {
flag = false;
break;
}
}
return flag;
}
25、去除html标签
export const removeHtmltag = (str) => {
return str.replace(/<[^>]+>/g, ”)
}
26、获取url参数
export const getQueryString = (name) => {
const reg = new RegExp(‘(^|&)’ + name + ‘=([^&]*)(&|$)’, ‘i’);
const search = window.location.search.split(‘?’)[1] || ”;
const r = search.match(reg) || [];
return r[2];
}
27、动态引入js
export const injectScript = (src) => {
const s = document.createElement(‘script’);
s.type = ‘text/javascript’;
s.async = true;
s.src = src;
const t = document.getElementsByTagName(‘script’)[0];
t.parentNode.insertBefore(s, t);
}
28、根据url地址下载
export const download = (url) => {
var isChrome = navigator.userAgent.toLowerCase().indexOf(‘chrome’) > -1;
var isSafari = navigator.userAgent.toLowerCase().indexOf(‘safari’) > -1;
if (isChrome || isSafari) {
var link = document.createElement(‘a’);
link.href = url;
if (link.download !== undefined) {
var fileName = url.substring(url.lastIndexOf(‘/’) + 1, url.length);
link.download = fileName;
}
if (document.createEvent) {
var e = document.createEvent(‘MouseEvents’);
e.initEvent(‘click’, true, true);
link.dispatchEvent(e);
return true;
}
}
if (url.indexOf(‘?’) === -1) {
url += ‘?download’;
}
window.open(url, ‘_self’);
return true;
}
29、el是否包含某个class
export const hasClass = (el, className) => {
let reg = new RegExp(‘(^|\\s)’ + className + ‘(\\s|$)’)
return reg.test(el.className)
}
30、el添加某个class
export const addClass = (el, className) => {
if (hasClass(el, className)) {
return
}
let newClass = el.className.split(‘ ‘)
newClass.push(className)
el.className = newClass.join(‘ ‘)
}
31、el去除某个class
export const removeClass = (el, className) => {
if (!hasClass(el, className)) {
return
}
let reg = new RegExp(‘(^|\\s)’ + className + ‘(\\s|$)’, ‘g’)
el.className = el.className.replace(reg, ‘ ‘)
}
32、获取滚动的坐标
export const getScrollPosition = (el = window) => ({
x: el.pageXOffset !== undefined ? el.pageXOffset : el.scrollLeft,
y: el.pageYOffset !== undefined ? el.pageYOffset : el.scrollTop
});
33、滚动到顶部
export const scrollToTop = () => {
const c = document.documentElement.scrollTop || document.body.scrollTop;
if (c > 0) {
window.requestAnimationFrame(scrollToTop);
window.scrollTo(0, c – c / 8);
}
}
总的来说,JavaScript的代码较其他语言相对简单,也比较容易上手。但是如果遇到复杂的JavaScript问题,不如来StudyGate跟JavaScript高手过招!StudyGate汇集全网JavaScript高手,24/7在线。几个步骤,你的JavaScript问题就会迎刃而解!
Step 1:提交作业要求
三分钟即可完成下单,下单时可以选择作业需要的时间和具体要求。
Step 2:选择专业导师
作业提交成功之后,导师审核要求,确认之后会联系报价,可自由选择专业学科相关导师,并且确认作业最终价格。
Step 3:完成订单, 准时交付
导师开始处理订单。在此期间有任何问题,都可以登录账号和导师随时沟通。作业完成后,系统自动发送至你的邮箱,所有信息安全保密。你也可以登录账号直接下载。
Step 4:收到答案14天之内确认,100%满意保证
收到作业之后14天之内,如果对作业有任何问题,都可以联系导师进行修改。100%满意保证,只有你选择满意答案之后,我们才会扣款,安全有保障。
Step 5:对导师提出评价
我们拥有严格的导师考核评价机制,服务好不好,全由你说了算!你的认同是我们前进的动力。
我们的服务范围包括但不限于:
C,C#,C++
Computer Science
Data structure/Machine Learning
Dreamweaver
HTML 代写
Java/JavaScript/JQuery
Linux/Windows/Mac socket Algorithm
Macintosh
Mathematica (programming)
R语言
Networking (computer)
Oracle
Pascal/Perl/PHP/Python
Revit/Rust/Ruby
SAS/Sketchup/Solidworks/SQL/STATA/Swift/SPSS
UNIX
Visual Basic
Web Design/Operating System
StudyGate专业理工科作业辅导,最靠谱的Javascript作业辅导!
有任何问题,欢迎随时咨询网页客服!