Skip to content

Instantly share code, notes, and snippets.

View thc282's full-sized avatar
🎮
Gaming Student

thc282

🎮
Gaming Student
View GitHub Profile
@thc282
thc282 / WindowOpen.js
Last active April 22, 2024 16:15
window.open with android / IOS
//Get the device type
let system = navigator.userAgent
let isAndroid = system.indexOf('Android') > -1 || system.indexOf('Adr') > -1 // android终端
let isiOS = !!system.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/) //ios终端
let Androidurl = "https://www.androidurl.com"
let Appleurl = "https://www.Appleurl.com"
// Open the Google Maps link in a new tab
var newWindow = window.open('', '_blank') // Noted: this window.open() must be call outside the async, since safari blocked .open() inside any async function
@thc282
thc282 / Json2CSV.js
Last active April 22, 2024 14:53
Convert Json to CSV format
//Convert to csv
downloadCSVFromJson = (filename, arrayOfJson) => {
// convert JSON to CSV
const replacer = (key, value) => value === null ? '' : value // specify how you want to handle null values here
const header = Object.keys(arrayOfJson[0])
let csv = arrayOfJson.map(row => header.map(fieldName =>
JSON.stringify(row[fieldName], replacer)).join(','))
csv.unshift(header.join(','))
csv = csv.join('\r\n')
@thc282
thc282 / FixScreenScale.html
Created April 19, 2024 21:12
Fix HTML fit screen
<!--add this into <head> part -->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
@thc282
thc282 / CustomTextField.kt
Last active April 13, 2024 18:22
JetPack Compose Customize TextField + Error Message (Fix Text cutting when height is small) [Default style = OutlinedTextField] <Android>
var email by remember { mutableStateOf("") }
var isEmailValid by remember { mutableStateOf(false) }
//Calling the function
CustomOutlinedTextField(
value = email,
onValueChange = {
email = it
isEmailValid = isValidEmail(it)
},