Skip to content

Instantly share code, notes, and snippets.

View nicholasxjy's full-sized avatar
🖖
AFK

xue nicholasxjy

🖖
AFK
View GitHub Profile
@nicholasxjy
nicholasxjy / formatTime.js
Created March 1, 2017 02:29
generic format time
function parseTime(time, format = 'y-m-d h:i:s') {
if (!time) {
return '0000-00-00 00:00:00'
}
const date = time instanceof Date ? time : new Date(parseInt(time, 10))
const formatObj = {
y: date.getFullYear(),
m: date.getMonth() + 1,
@nicholasxjy
nicholasxjy / numWithCommas.js
Created March 1, 2017 02:31
format number with commas
export function numberWithCommas(num) {
return num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',')
}
<link rel="icon" type="image/png" href="./src/favicon.png">
@nicholasxjy
nicholasxjy / titleCase.js
Created May 9, 2017 03:32
titlecase string in js
function titleCase(str) {
str = str.toLowerCase()
return str.charAt(0).toUpperCase() + str.slice(1)
}
[
{
"name": {
"en": {
"official": "Republic of Albania",
"common": "Albania"
},
"zh": {
"official": "阿尔巴尼亚共和国",
"common": "阿尔巴尼亚"
[
{
"name": {
"en": {
"official": "Republic of Albania",
"common": "Albania"
},
"zh": {
"official": "阿尔巴尼亚共和国",
"common": "阿尔巴尼亚"
@nicholasxjy
nicholasxjy / toblob.js
Created November 14, 2017 07:20
base 64 to blob
export function b64toBlob(data, contentType = '', sliceSize = 512) {
const byteCharacters = atob(data)
const byteArrays = []
for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {
const slice = byteCharacters.slice(offset, offset + sliceSize)
const byteNumbers = new Array(slice.length)
for (let i = 0; i < slice.length; i++) {
byteNumbers[i] = slice.charCodeAt(i)
}
const byteArray = new Uint8Array(byteNumbers)
// 屏幕可视窗口大小
window.innerHeight // 标准浏览器及IE9+
document.documentElement.clientHeight // 标准浏览器及低版本IE标准模式
document.body.clientHeight // 低版本混杂模式
// 浏览器窗口顶部与文档顶部之间的距离,也就是滚动条滚动的距离
window.pagYOffset // 标准浏览器及IE9+
document.documentElement.scrollTop // 兼容ie低版本的标准模式
document.body.scrollTop // 兼容混杂模式
@nicholasxjy
nicholasxjy / meta-tags.md
Created August 4, 2018 14:50 — forked from lancejpollard/meta-tags.md
Complete List of HTML Meta Tags

Copied from http://code.lancepollard.com/complete-list-of-html-meta-tags/

Basic HTML Meta Tags

<meta name="keywords" content="your, tags"/>
<meta name="description" content="150 words"/>
<meta name="subject" content="your website's subject">
<meta name="copyright"content="company name">
<meta name="language" content="ES">
@nicholasxjy
nicholasxjy / regex.js
Last active February 27, 2020 03:09
some useful regex
// mobile phone numbers in china
const reg = /^1(?:3\d|4[4-9]|5[0-35-9]|6[67]|7[013-8]|8\d|9\d)\d{8}$/
// image tag
const regex = /<img([\s\S]*?)src\s*=\s*(['"])([\s\S]*?)\2([^>]*)>/gi
// only chinese charactors and letters
const regex = /^[\u4e00-\u9fa5a-zA-Z]+$/
// email