ฉันกำลังพยายามประเมินความมืดของสีที่ตัวเลือกสีเลือกเพื่อดูว่า "ดำเกินไป" หรือไม่และถ้าเป็นเช่นนั้นให้ตั้งค่าเป็นสีขาว ฉันคิดว่าฉันสามารถใช้อักขระตัวแรกของค่าฐานสิบหกเพื่อดึงสิ่งนี้ออก มันใช้งานได้ แต่ก็เปลี่ยนสี "อ่อน" ที่ถูกต้องด้วย
ฉันมีรหัสทำสิ่งนี้:
if (lightcolor.substring(0,3) == "#00"|| lightcolor.substring(0,3) == "#010"){
lightcolor="#FFFFFF";
color=lightcolor;
}
ต้องมีวิธีที่มีประสิทธิภาพมากขึ้นในการคำนวณเลขฐานสิบหกเพื่อที่จะรู้ว่าสีได้ไปไกลกว่าความมืดระดับหนึ่งหรือไม่? เช่นถ้า lightcolor + "some hex value" <= "some hex value" จากนั้นตั้งค่าเป็นสีขาว
ฉันได้เพิ่ม tinyColor ซึ่งอาจมีประโยชน์สำหรับสิ่งนี้ แต่ฉันไม่รู้แน่ชัด